$OpenBSD: patch-hotspot_src_cpu_x86_vm_templateTable_x86_32_cpp,v 1.1 2009/01/04 23:25:16 kurt Exp $
--- hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp.orig	Fri Dec 19 03:42:04 2008
+++ hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp	Tue Dec 30 08:19:28 2008
@@ -137,10 +137,10 @@ static void do_oop_store(InterpreterMacroAssembler* _m
         // Do the actual store
         // noreg means NULL
         if (val == noreg) {
-          __ movl(Address(rdx, 0), NULL_WORD);
+          __ movptr(Address(rdx, 0), NULL_WORD);
           // No post barrier for NULL
         } else {
-          __ movl(Address(rdx, 0), val);
+          __ movptr(Address(rdx, 0), val);
           __ g1_write_barrier_post(rdx, rax, rcx, rbx, rsi);
         }
         __ restore_bcp();
@@ -152,9 +152,9 @@ static void do_oop_store(InterpreterMacroAssembler* _m
     case BarrierSet::CardTableExtension:
       {
         if (val == noreg) {
-          __ movl(obj, NULL_WORD);
+          __ movptr(obj, NULL_WORD);
         } else {
-          __ movl(obj, val);
+          __ movptr(obj, val);
           // flatten object address if needed
           if (!precise || (obj.index() == noreg && obj.disp() == 0)) {
             __ store_check(obj.base());
@@ -168,9 +168,9 @@ static void do_oop_store(InterpreterMacroAssembler* _m
     case BarrierSet::ModRef:
     case BarrierSet::Other:
       if (val == noreg) {
-        __ movl(obj, NULL_WORD);
+        __ movptr(obj, NULL_WORD);
       } else {
-        __ movl(obj, val);
+        __ movptr(obj, val);
       }
       break;
     default      :
