diff options
Diffstat (limited to 'gcc-4.7/libjava/include/x86_64-signal.h')
-rw-r--r-- | gcc-4.7/libjava/include/x86_64-signal.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc-4.7/libjava/include/x86_64-signal.h b/gcc-4.7/libjava/include/x86_64-signal.h index 4bd8a3601..d03b91439 100644 --- a/gcc-4.7/libjava/include/x86_64-signal.h +++ b/gcc-4.7/libjava/include/x86_64-signal.h @@ -47,6 +47,10 @@ do \ \ bool _is_64_bit = false; \ \ + /* Skip 67h address size prefix. */ \ + if (_rip[0] == 0x67) \ + _rip++; \ + \ if ((_rip[0] & 0xf0) == 0x40) /* REX byte present. */ \ { \ unsigned char _rex = _rip[0] & 0x0f; \ @@ -64,10 +68,10 @@ do \ { \ if (_is_64_bit) \ _min_value_dividend = \ - _gregs[REG_RAX] == (greg_t)0x8000000000000000UL; \ + _gregs[REG_RAX] == (greg_t)0x8000000000000000ULL; \ else \ _min_value_dividend = \ - (_gregs[REG_RAX] & 0xffffffff) == (greg_t)0x80000000UL; \ + (_gregs[REG_RAX] & 0xffffffff) == (greg_t)0x80000000ULL; \ } \ \ if (_min_value_dividend) \ |