CVSROOT:        /sources/dotgnu-pnet
Module name:    libjit
Changes by:     Aleksey Demakov <avd>   06/10/22 23:51:41

Modified files:
        .              : ChangeLog 
        jit            : jit-rules-x86.ins 

Log message:
        remove excessive and buggy patterns from JIT_OP_EXPAND_INT and
        JIT_OP_EXPAND_UINT rules

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.275&r2=1.276
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-rules-x86.ins?cvsroot=dotgnu-pnet&r1=1.16&r2=1.17

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.275
retrieving revision 1.276
diff -u -b -r1.275 -r1.276
--- ChangeLog   18 Oct 2006 07:58:54 -0000      1.275
+++ ChangeLog   22 Oct 2006 23:51:41 -0000      1.276
@@ -1,3 +1,10 @@
+2006-10-23  Aleksey Demakov  <[EMAIL PROTECTED]>
+
+       * jit/jit-rules-x86.ins: JIT_OP_EXPAND_INT and JIT_OP_EXPAND_UINT
+       rules were broken for local byte or short values. Fixed by removing
+       the local pattern altogether as the reg pattern produces the same
+       code but without the bug.
+
 2006-10-18  Aleksey Demakov  <[EMAIL PROTECTED]>
 
        * jit/jit-reg-alloc.c (clobbers_register, bind_value): enable

Index: jit/jit-rules-x86.ins
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-rules-x86.ins,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- jit/jit-rules-x86.ins       18 Oct 2006 07:58:55 -0000      1.16
+++ jit/jit-rules-x86.ins       22 Oct 2006 23:51:41 -0000      1.17
@@ -118,16 +118,6 @@
        }
        
 JIT_OP_EXPAND_INT:
-       [=lreg, imm] -> {
-               x86_mov_reg_imm(inst, $1, $2);
-               x86_mov_reg_reg(inst, %1, $1, 4);
-               x86_shift_reg_imm(inst, X86_SAR, %1, 31);
-       }
-       [=lreg, local] -> {
-               x86_mov_reg_membase(inst, $1, X86_EBP, $2, 4);
-               x86_mov_reg_reg(inst, %1, $1, 4);
-               x86_shift_reg_imm(inst, X86_SAR, %1, 31);
-       }
        [=lreg, reg] -> {
                if($1 != $2)
                {
@@ -138,14 +128,6 @@
        }
 
 JIT_OP_EXPAND_UINT:
-       [=lreg, imm] -> {
-               x86_mov_reg_imm(inst, $1, $2);
-               x86_clear_reg(inst, %1);
-       }
-       [=lreg, local] -> {
-               x86_mov_reg_membase(inst, $1, X86_EBP, $2, 4);
-               x86_clear_reg(inst, %1);
-       }
        [=lreg, reg] -> {
                if($1 != $2)
                {


_______________________________________________
dotgnu-pnet-commits mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/dotgnu-pnet-commits

Reply via email to