2008-02-06 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Wed, 6 Feb 2008 07:40:31 +0000 (07:40 -0000)
committerZoltan Varga <vargaz@gmail.com>
Wed, 6 Feb 2008 07:40:31 +0000 (07:40 -0000)
* inssel.brg mini-<ARCH>.c cpu-<ARCH>.md: Get rid of unused CEE_RET opcode.

svn path=/trunk/mono/; revision=94997

15 files changed:
mono/mini/ChangeLog
mono/mini/cpu-alpha.md
mono/mini/cpu-amd64.md
mono/mini/cpu-mips.md
mono/mini/cpu-x86.md
mono/mini/inssel.brg
mono/mini/mini-alpha.c
mono/mini/mini-amd64.c
mono/mini/mini-arm.c
mono/mini/mini-mips.c
mono/mini/mini-ppc.c
mono/mini/mini-s390.c
mono/mini/mini-s390x.c
mono/mini/mini-sparc.c
mono/mini/mini-x86.c

index f4b727b1b657c6448a142d627b06cb9e274f1a47..eaa9edc60468834a9cb298bdaf1af1f33b25ded3 100644 (file)
@@ -1,5 +1,7 @@
 2008-02-06  Zoltan Varga  <vargaz@gmail.com>
 
+       * inssel.brg mini-<ARCH>.c cpu-<ARCH>.md: Get rid of unused CEE_RET opcode.
+
        * mini-<ARCH>.c cpu-<ARCH>.md: Get rid of unused LDIND/STIND opcodes.
 
        * *.brg mini-<ARCH>.c cpu-<ARCH>.md: Get rid of OP_SETREG/OP_SETFREG/OP_SETREGIMM,
index 31301ef1f68e978d3c1efe5aa83919a439d4eafa..81fa9b3b22000f90280354ce326b2d0bfebfab17 100644 (file)
@@ -145,7 +145,6 @@ setret: dest:a src1:i len:4
 setlret: dest:i src1:i src2:i len:4
 checkthis: src1:b len:4
 call: dest:a clob:c len:64
-ret: len:4
 voidcall: clob:c len:64
 voidcall_reg: src1:i clob:c len:64
 voidcall_membase: src1:b clob:c len:64
index 21bee8b57112c1481d2302b86ebfa3bbd9fbc133..0d160cbbe763c2a98065830ac35de918a846e9ad 100644 (file)
@@ -128,7 +128,6 @@ setret: dest:a src1:i len:3
 setlret: dest:i src1:i src2:i len:5
 checkthis: src1:b len:5
 call: dest:a clob:c len:64
-ret: len:2
 voidcall: clob:c len:64
 voidcall_reg: src1:i clob:c len:64
 voidcall_membase: src1:b clob:c len:64
index 386a1b83a1cd198dbb06246391f99c447d78a553..0c73c67f915358d7d8050968429e7262a547c350 100644 (file)
@@ -57,7 +57,6 @@ break: len:4
 jmp: len:92
 call: dest:v clob:c len:20
 calli: dest:v clob:c len:20
-ret: len:8
 br.s: len:8
 brfalse.s: len:8
 brtrue.s: len:8
index fde2b545ddef5e8da60da6d1adc82fb7c2cb358c..193910994a847c77e8e2914c7ed559fb07d87a42 100644 (file)
@@ -59,7 +59,6 @@
 break: len:1
 jmp: len:32
 call: dest:a clob:c len:17
-ret: len:1
 br: len:5
 beq: len:6
 bge: len:6
index df746bcf1901c530d90001fa118017fd993db287..9e6c8471f9febd287680b2f995be507dbadf68d8 100644 (file)
@@ -970,10 +970,6 @@ freg: OP_FCALL_REG (OP_I8CONST) {
        mono_bblock_add_inst (s->cbb, tree);
 }
 
-stmt: CEE_RET "0" {
-       mono_bblock_add_inst (s->cbb, tree);
-}
-
 stmt: CEE_POP (reg)
 
 # remove some common pops without side effects
index dd7a0f63b94417590097645bd53192e3a80ed317..e6ced910c86d88f8942f8e171d8949b84d3161c8 100644 (file)
@@ -3822,12 +3822,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
             alpha_bsr(code, alpha_ra, 0);
           }
           break;
-          
-        case CEE_RET:
-          CFG_DEBUG(4) g_print("ALPHA_CHECK: [ret]\n");
-          
-          alpha_ret(code, alpha_ra, 1);
-          break;
 
         case OP_THROW:
           CFG_DEBUG(4) g_print("ALPHA_CHECK: [throw] sreg1=%0x\n",
index e81b56b6c374ebd6cfa21ae1ef7a9de7ffead966..48dd088a4918961f754205b4e1d1a96438678e1f 100644 (file)
@@ -3312,9 +3312,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        code = mono_emit_stack_alloc (code, ins);
                        amd64_mov_reg_reg (code, ins->dreg, AMD64_RSP, 8);
                        break;
-               case CEE_RET:
-                       amd64_ret (code);
-                       break;
                case OP_THROW: {
                        amd64_mov_reg_reg (code, AMD64_ARG_REG1, ins->sreg1, 8);
                        code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD, 
index 7054cdd4aca89f0de313bb3b56c62c6ef6536eee..2c0ec30760db7d92245c899bbd2425ae7032d33c 100644 (file)
@@ -2512,10 +2512,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        ARM_ADD_REG_IMM8 (code, ins->dreg, ARMREG_SP, alloca_waste);
                        break;
                }
-               case CEE_RET:
-                       g_assert_not_reached ();
-                       ARM_MOV_REG_REG (code, ARMREG_PC, ARMREG_LR);
-                       break;
                case OP_THROW: {
                        if (ins->sreg1 != ARMREG_R0)
                                ARM_MOV_REG_REG (code, ARMREG_R0, ins->sreg1);
index 2c03206710dc589e930aa87d6e707b686e4cfacf..04c9adbedb63ca2cd68a26114b38b2b9299b291f 100644 (file)
@@ -2325,10 +2325,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
                        break;
                }
-               case CEE_RET:
-                       mips_jr (code, mips_ra);
-                       mips_nop (code);
-                       break;
                case OP_THROW: {
                        gpointer addr = mono_arch_get_throw_exception();
                        mips_move (code, mips_a0, ins->sreg1);
index cc334d1ae593468a17656297226a19d3a7648a0f..6beb18ba04879de99f77da3dd73e0932b3ea9414 100644 (file)
@@ -2685,9 +2685,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        ppc_addi (code, ins->dreg, ppc_sp, area_offset);
                        break;
                }
-               case CEE_RET:
-                       ppc_blr (code);
-                       break;
                case OP_THROW: {
                        //ppc_break (code);
                        ppc_mr (code, ppc_r3, ins->sreg1);
index 7fb173bc4966e6f8c29111f94d5e81cb0d58b612..6fdf1874f95237df1f8b1853f66084b09b6255c3 100644 (file)
@@ -3484,10 +3484,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
                }
                        break;
-               case CEE_RET: {
-                       s390_br  (code, s390_r14);
-               }
-                       break;
                case OP_THROW: {
                        s390_lr (code, s390_r2, ins->sreg1);
                        mono_add_patch_info (cfg, code-cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD, 
index b116adb517a555ae29088ed73ce4dff4c72f4700..5dc628e610552d1ff9cd817372dd7120cc5674f9 100644 (file)
@@ -3641,10 +3641,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
                }
                        break;
-               case CEE_RET: {
-                       s390_br  (code, s390_r14);
-               }
-                       break;
                case OP_THROW: {
                        s390_lgr  (code, s390_r2, ins->sreg1);
                        s390_basr (code, s390_r13, 0);
index 039ba39f50f58e89469f08bd431d87fe35383378..e921a5df41cb10977d676e26f4c84ca88f6f2086 100644 (file)
@@ -3041,10 +3041,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
                        break;
                }
-               case CEE_RET:
-                       /* The return is done in the epilog */
-                       g_assert_not_reached ();
-                       break;
                case OP_THROW:
                        sparc_mov_reg_reg (code, ins->sreg1, sparc_o0);
                        mono_add_patch_info (cfg, (guint8*)code - cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD, 
index da1cb2c5da962c19948f37f4baafb72e26ea8e2a..2c460bcd28a0ec47021e67dd41c05b421a4cf8b0 100644 (file)
@@ -2765,9 +2765,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        code = mono_emit_stack_alloc (code, ins);
                        x86_mov_reg_reg (code, ins->dreg, X86_ESP, 4);
                        break;
-               case CEE_RET:
-                       x86_ret (code);
-                       break;
                case OP_THROW: {
                        x86_push_reg (code, ins->sreg1);
                        code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD,