summaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2012-07-18 18:09:49 +0000
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2012-07-18 18:09:49 +0000
commit0e02c032402537ee29b1e84f4dcd0c29ba2852ca (patch)
treedebfc85b4cd4fc169843e49d153f47421bf85d3e /libjava
parentaea51dc8652f43ae4d72a93ad745651c29fe61fd (diff)
downloadgcc-0e02c032402537ee29b1e84f4dcd0c29ba2852ca.tar.gz
Skip 67h address size prefix unconditionally
PR libjava/53973 * include/x86_64-signal.h (CHECK_67H_PREFIX): Removed. (HANDLE_DIVIDE_OVERFLOW): Skip 67h address size prefix unconditionally. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189623 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog7
-rw-r--r--libjava/include/x86_64-signal.h10
2 files changed, 9 insertions, 8 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 1d5570daed3..e9b3a0fab59 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,6 +1,13 @@
2012-07-18 H.J. Lu <hongjiu.lu@intel.com>
PR libjava/53973
+ * include/x86_64-signal.h (CHECK_67H_PREFIX): Removed.
+ (HANDLE_DIVIDE_OVERFLOW): Skip 67h address size prefix
+ unconditionally.
+
+2012-07-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR libjava/53973
* include/x86_64-signal.h (CHECK_67H_PREFIX): New.
(HANDLE_DIVIDE_OVERFLOW): Check and and skip 67h address size
prefix if CHECK_67H_PREFIX is 1. Use ULL suffix for 64-bit
diff --git a/libjava/include/x86_64-signal.h b/libjava/include/x86_64-signal.h
index 84907c3c3a3..12af21c20bb 100644
--- a/libjava/include/x86_64-signal.h
+++ b/libjava/include/x86_64-signal.h
@@ -21,12 +21,6 @@ details. */
#define HANDLE_SEGV 1
#define HANDLE_FPE 1
-#ifdef __ILP32__
-# define CHECK_67H_PREFIX 1
-#else
-# define CHECK_67H_PREFIX 0
-#endif
-
#define SIGNAL_HANDLER(_name) \
static void _Jv_##_name (int, siginfo_t *, \
void *_p __attribute__ ((__unused__)))
@@ -53,8 +47,8 @@ do \
\
bool _is_64_bit = false; \
\
- /* Check and skip 67h address size prefix if needed. */ \
- if (CHECK_67H_PREFIX && _rip[0] == 0x67) \
+ /* Skip 67h address size prefix. */ \
+ if (_rip[0] == 0x67) \
_rip++; \
\
if ((_rip[0] & 0xf0) == 0x40) /* REX byte present. */ \