diff src/cpu/x86/vm/graalCodeInstaller_x86.hpp @ 13553:d49f00604347

removed poll_Relocation::pollingForm type and associated data field and rely solely on format field of safepoint relocation entries when deciding whether or not to relocate the operand of a safepoint poll instruction
author Doug Simon <doug.simon@oracle.com>
date Wed, 08 Jan 2014 16:57:30 +0100
parents fb7b39f07232
children 4fc8c8bb4c32
line wrap: on
line diff
--- a/src/cpu/x86/vm/graalCodeInstaller_x86.hpp	Wed Jan 08 16:56:01 2014 +0100
+++ b/src/cpu/x86/vm/graalCodeInstaller_x86.hpp	Wed Jan 08 16:57:30 2014 +0100
@@ -243,19 +243,21 @@
   switch (mark) {
     case MARK_POLL_NEAR: {
       relocate_poll_near(pc);
-      _instructions->relocate(pc, poll_Relocation::spec(poll_Relocation::pc_relative));
+      _instructions->relocate(pc, relocInfo::poll_type, Assembler::disp32_operand);
       break;
     }
     case MARK_POLL_FAR:
-      _instructions->relocate(pc, poll_Relocation::spec(poll_Relocation::absolute));
+      // This is a load from a register so there is no relocatable operand
+      _instructions->relocate(pc, relocInfo::poll_type, Assembler::no_operand);
       break;
     case MARK_POLL_RETURN_NEAR: {
       relocate_poll_near(pc);
-      _instructions->relocate(pc, poll_return_Relocation::spec(poll_Relocation::pc_relative));
+      _instructions->relocate(pc, relocInfo::poll_return_type, Assembler::disp32_operand);
       break;
     }
     case MARK_POLL_RETURN_FAR:
-      _instructions->relocate(pc, poll_return_Relocation::spec(poll_Relocation::absolute));
+      // This is a load from a register so there is no relocatable operand
+      _instructions->relocate(pc, relocInfo::poll_return_type, Assembler::no_operand);
       break;
     default:
       fatal("invalid mark value");