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-interp.c jit/jit-rules...


From: Aleksey Demakov
Subject: [dotgnu-pnet-commits] libjit ChangeLog jit/jit-interp.c jit/jit-rules...
Date: Sun, 05 Oct 2008 15:34:15 +0000

CVSROOT:        /sources/dotgnu-pnet
Module name:    libjit
Changes by:     Aleksey Demakov <avd>   08/10/05 15:34:15

Modified files:
        .              : ChangeLog 
        jit            : jit-interp.c jit-rules-interp.c 

Log message:
        fix JIT_OP_TRUNC_INT, JIT_OP_TRUNC_UINT, JIT_OP_INCOMING_REG opcodes in 
interpreter

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.388&r2=1.389
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-interp.c?cvsroot=dotgnu-pnet&r1=1.23&r2=1.24
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-rules-interp.c?cvsroot=dotgnu-pnet&r1=1.34&r2=1.35

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.388
retrieving revision 1.389
diff -u -b -r1.388 -r1.389
--- ChangeLog   7 Aug 2008 12:51:47 -0000       1.388
+++ ChangeLog   5 Oct 2008 15:34:14 -0000       1.389
@@ -1,3 +1,12 @@
+2008-10-05  Aleksey Demakov  <address@hidden>
+
+       * jit/jit-interp.c (_jit_run_function): fix implementation of the
+       JIT_OP_TRUNC_INT and JIT_OP_TRUNC_UINT opcodes in interpreter.
+
+       * jit/jit-rules-interp.c (_jit_gen_insn): add support of the
+       JIT_OP_INCOMING_REG opcode, interpreter needs it for exception
+       handling.
+
 2008-08-07  Klaus Treichel  <address@hidden>
 
        * jit/jit-apply.c jit/jit-insn.c, jit/jit-interp.c,

Index: jit/jit-interp.c
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-interp.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -b -r1.23 -r1.24
--- jit/jit-interp.c    7 Aug 2008 12:51:48 -0000       1.23
+++ jit/jit-interp.c    5 Oct 2008 15:34:14 -0000       1.24
@@ -404,7 +404,7 @@
                VMCASE(JIT_OP_TRUNC_INT):
                {
                        /* Truncate an integer to a signed 32-bit value */
-                       /* In the interpreter, this is a NOP */
+                       VM_R0_INT = VM_R1_INT;
                        VM_MODIFY_PC(1);
                }
                VMBREAK;
@@ -412,7 +412,7 @@
                VMCASE(JIT_OP_TRUNC_UINT):
                {
                        /* Truncate an integer to an unsigned 32-bit value */
-                       /* In the interpreter, this is a NOP */
+                       VM_R0_INT = VM_R1_INT;
                        VM_MODIFY_PC(1);
                }
                VMBREAK;

Index: jit/jit-rules-interp.c
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-rules-interp.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -b -r1.34 -r1.35
--- jit/jit-rules-interp.c      24 Jan 2008 20:12:53 -0000      1.34
+++ jit/jit-rules-interp.c      5 Oct 2008 15:34:14 -0000       1.35
@@ -1336,6 +1336,12 @@
                jit_cache_opcode(&(gen->posn), insn->opcode);
                break;
 
+       case JIT_OP_INCOMING_REG:
+               /* Store incoming value (in interpreter this is used to
+                  pass an exception object to the catcher) */
+               store_value(gen, insn->value1);
+               break;
+
        case JIT_OP_RETURN_REG:
                /* Push a function return value back onto the stack */
                switch(jit_type_normalize(insn->value1->type)->kind)




reply via email to

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