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-reg-alloc.c


From: Aleksey Demakov
Subject: [dotgnu-pnet-commits] libjit ChangeLog jit/jit-reg-alloc.c
Date: Wed, 01 Nov 2006 17:41:36 +0000

CVSROOT:        /sources/dotgnu-pnet
Module name:    libjit
Changes by:     Aleksey Demakov <avd>   06/11/01 17:41:36

Modified files:
        .              : ChangeLog 
        jit            : jit-reg-alloc.c 

Log message:
        fixed a bug with coalescing values on x87-register stack

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.276&r2=1.277
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-reg-alloc.c?cvsroot=dotgnu-pnet&r1=1.43&r2=1.44

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.276
retrieving revision 1.277
diff -u -b -r1.276 -r1.277
--- ChangeLog   22 Oct 2006 23:51:41 -0000      1.276
+++ ChangeLog   1 Nov 2006 17:41:36 -0000       1.277
@@ -1,3 +1,9 @@
+2006-11-01  Aleksey Demakov  <address@hidden>
+
+       * jit/jit-reg-alloc.c (commit_input_value, commit_output_value):
+       do not increment/decrement the top of the register stack in case of
+       fp-value coalescing.
+
 2006-10-23  Aleksey Demakov  <address@hidden>
 
        * jit/jit-rules-x86.ins: JIT_OP_EXPAND_INT and JIT_OP_EXPAND_UINT
@@ -79,7 +85,7 @@
 
        * jit/jit-reg-alloc.h, jit/jit-reg-alloc.c:
        * tools/gen-rules-parser.y: add _JIT_REGS_CLOBBER_STACK flag and use
-       it in the code genearted for "only" rules instead of the explicit
+       it in the code generated for "only" rules instead of the explicit
        stack top check followed by the _jit_regs_spill_all() call.
 
 2006-09-02  Aleksey Demakov  <address@hidden>

Index: jit/jit-reg-alloc.c
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-reg-alloc.c,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -b -r1.43 -r1.44
--- jit/jit-reg-alloc.c 18 Oct 2006 07:58:55 -0000      1.43
+++ jit/jit-reg-alloc.c 1 Nov 2006 17:41:36 -0000       1.44
@@ -127,6 +127,10 @@
                }
                putc('\n', stdout);
        }
+#ifdef JIT_REG_STACK
+       printf("stack_top: %d\n", gen->reg_stack_top);
+#endif
+       fflush(stdout);
 }
 #endif
 
@@ -2274,7 +2278,7 @@
        if(desc->copy)
        {
 #ifdef JIT_REG_STACK
-               if(IS_STACK_REG(desc->reg))
+               if(IS_STACK_REG(desc->reg) && !regs->copy)
                {
                        --(gen->reg_stack_top);
                }
@@ -2299,7 +2303,7 @@
                }
                unbind_value(gen, desc->value, reg, other_reg);
 #ifdef JIT_REG_STACK
-               if(IS_STACK_REG(reg))
+               if(IS_STACK_REG(reg) && !regs->copy)
                {
                        --(gen->reg_stack_top);
                }
@@ -2334,7 +2338,7 @@
        }
 
 #ifdef JIT_REG_STACK
-       if(IS_STACK_REG(desc->reg))
+       if(IS_STACK_REG(desc->reg) && !regs->copy)
        {
                ++(gen->reg_stack_top);
        }




reply via email to

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