changeset 13489:780d53499ca2

merge
author Christian Wimmer <christian.wimmer@oracle.com>
date Fri, 27 Dec 2013 17:13:57 -0800
parents 83adefeb8e5c (current diff) 441b54753cda (diff)
children 33f0ac112264
files
diffstat 2 files changed, 12 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/mx/mx_graal.py	Fri Dec 27 15:12:12 2013 -0800
+++ b/mx/mx_graal.py	Fri Dec 27 17:13:57 2013 -0800
@@ -983,7 +983,7 @@
     for vmbuild in ['fastdebug', 'product']:
         for test in sanitycheck.getDacapos(level=sanitycheck.SanityCheckLevel.Gate, gateBuildLevel=vmbuild):
             if 'eclipse' in str(test) and mx.java().version >= mx.VersionSpec('1.8'):
-                # DaCapo eclipse doesn't not run under JDK8
+                # DaCapo eclipse doesn't run under JDK8
                 continue
 
             t = Task(str(test) + ':' + vmbuild)
--- a/src/cpu/x86/vm/graalCodeInstaller_x86.hpp	Fri Dec 27 15:12:12 2013 -0800
+++ b/src/cpu/x86/vm/graalCodeInstaller_x86.hpp	Fri Dec 27 17:13:57 2013 -0800
@@ -219,26 +219,25 @@
   }
 }
 
+static void relocate_poll_near(address pc) {
+  NativeInstruction* ni = nativeInstruction_at(pc);
+  int32_t* disp = (int32_t*) Assembler::locate_operand(pc, Assembler::disp32_operand);
+  int32_t offset = *disp; // The Java code installed the polling page offset into the disp32 operand
+  intptr_t new_disp = (intptr_t) (os::get_polling_page() + offset) - (intptr_t) ni;
+  *disp = (int32_t)new_disp;
+}
+
+
 inline void CodeInstaller::pd_relocate_poll(address pc, jint mark) {
   switch (mark) {
     case MARK_POLL_NEAR: {
-      NativeInstruction* ni = nativeInstruction_at(pc);
-      int32_t* disp = (int32_t*) Assembler::locate_operand(pc, Assembler::disp32_operand);
-      // int32_t* disp = (int32_t*) Assembler::locate_operand(instruction, Assembler::disp32_operand);
-      int32_t offset = *disp; // The Java code installed the polling page offset into the disp32 operand
-      intptr_t new_disp = (intptr_t) (os::get_polling_page() + offset) - (intptr_t) ni;
-      *disp = (int32_t)new_disp;
+      relocate_poll_near(pc);
     }
     case MARK_POLL_FAR:
       _instructions->relocate(pc, relocInfo::poll_type);
       break;
     case MARK_POLL_RETURN_NEAR: {
-      NativeInstruction* ni = nativeInstruction_at(pc);
-      int32_t* disp = (int32_t*) Assembler::locate_operand(pc, Assembler::disp32_operand);
-      // int32_t* disp = (int32_t*) Assembler::locate_operand(instruction, Assembler::disp32_operand);
-      int32_t offset = *disp; // The Java code installed the polling page offset into the disp32 operand
-      intptr_t new_disp = (intptr_t) (os::get_polling_page() + offset) - (intptr_t) ni;
-      *disp = (int32_t)new_disp;
+      relocate_poll_near(pc);
     }
     case MARK_POLL_RETURN_FAR:
       _instructions->relocate(pc, relocInfo::poll_return_type);