PatchSet 4147 
Date: 2003/10/31 20:46:56
Author: dalibor
Branch: HEAD
Tag: (none) 
Log:
Fixed bug in interpreter's lcmp

Members: 
        ChangeLog:1.1739->1.1740 
        kaffe/kaffevm/intrp/icode.h:1.18->1.19 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.1739 kaffe/ChangeLog:1.1740
--- kaffe/ChangeLog:1.1739      Fri Oct 31 15:15:42 2003
+++ kaffe/ChangeLog     Fri Oct 31 20:46:56 2003
@@ -1,3 +1,11 @@
+2003-10-31  Helmer Kraemer <[EMAIL PROTECTED]>
+           Dalibor Topic <[EMAIL PROTECTED]>
+
+       * kaffe/kaffevm/intrp/icode.h
+       (lcd) Fixed underflow on i686-linux. Use straight
+       < comparisons for longs instead of substracting 
+       one number from the other.
+ 
 2003-10-31  Ito Kazumitsu <[EMAIL PROTECTED]>
 
        * libraries/javalib/java/net/InetAddress.java:
Index: kaffe/kaffe/kaffevm/intrp/icode.h
diff -u kaffe/kaffe/kaffevm/intrp/icode.h:1.18 kaffe/kaffe/kaffevm/intrp/icode.h:1.19
--- kaffe/kaffe/kaffevm/intrp/icode.h:1.18      Tue Sep  2 16:40:58 2003
+++ kaffe/kaffe/kaffevm/intrp/icode.h   Fri Oct 31 20:46:57 2003
@@ -28,8 +28,8 @@
 #define        ashr_long(t, f1, f2)                    (t)[0].v.tlong = 
((int64)(f1)[0].v.tlong) >> ((f2)[0].v.tint & 63)
 #define        lshr_long(t, f1, f2)                    (t)[0].v.tlong = 
((uint64)(f1)[0].v.tlong) >> ((f2)[0].v.tint & 63)
 
-#define        lcmp(t, f1, f2)                         lcc = ((f2)[0].v.tlong) - 
((f1)[0].v.tlong); \
-                                               (t)[0].v.tint = (lcc < 0 ? -1 : lcc > 
0 ? 1 : 0)
+#define        lcmp(t, f1, f2)                         do { jlong l2 = 
((f2)[0].v.tlong); jlong l1 = ((f1)[0].v.tlong); \
+                                               (t)[0].v.tint = ((l1 == l2)? 0 : ((l1 
> l2) ? -1 : 1)); } while(0);
 
 #define        cvt_int_long(t, f)                      (t)[0].v.tlong = (f)[0].v.tint
 #define        cvt_long_int(t, f)                      (t)[0].v.tint = (f)[0].v.tlong

_______________________________________________
kaffe mailing list
[EMAIL PROTECTED]
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe

Reply via email to