dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dotgnu-pnet-commits] libjit ChangeLog jit/jit-rules-x86.ins


From: Aleksey Demakov
Subject: [dotgnu-pnet-commits] libjit ChangeLog jit/jit-rules-x86.ins
Date: Sun, 22 Oct 2006 23:51:41 +0000

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  <address@hidden>
+
+       * 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  <address@hidden>
 
        * 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)
                {




reply via email to

[Prev in Thread] Current Thread [Next in Thread]