harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From var...@apache.org
Subject svn commit: r575633 - /harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp
Date Fri, 14 Sep 2007 11:38:31 GMT
Author: varlax
Date: Fri Sep 14 04:38:30 2007
New Revision: 575633

URL: http://svn.apache.org/viewvc?rev=575633&view=rev
Log:
Fixed HARMONY-4675 [drlvm][jit][jet][x86-64] VM throws ArithmeticException during division
on value which has zero in low 32 bits.

Modified:
    harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp

Modified: harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp?rev=575633&r1=575632&r2=575633&view=diff
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg.cpp Fri Sep 14 04:38:30 2007
@@ -307,7 +307,7 @@
         }
         // fall through to the next checks
     }
-    // Long constant on the stack and we are on 64bit platform - check 
+    // Long value on the stack and we are on 64bit platform - check 
     // a single constant at once
     if (s.is_imm() && jt == i64 && !is_big(i64)) {
         if (s.lval() == 0) {
@@ -323,11 +323,11 @@
     assert(jt != i64 || !vis_imm(divizor_depth+1));
     
     if (s.is_reg()) {
-        Opnd reg = s.as_opnd(i32);
+        Opnd reg = s.as_opnd(jtmov(jt));
         alu(alu_test, reg, reg);
     }
     else {
-        Opnd mem = s.as_opnd(i32);
+        Opnd mem = s.as_opnd(jtmov(jt));
         alu(alu_cmp, mem, Opnd(0));
     }
     if (jt == i32 || !is_big(jt)) {



Mime
View raw message