Author: zoltan
Date: 2007-12-14 09:58:48 -0500 (Fri, 14 Dec 2007)
New Revision: 91289

Modified:
   trunk/mono/mono/mini/ChangeLog
   trunk/mono/mono/mini/aliasing.c
   trunk/mono/mono/mini/graph.c
   trunk/mono/mono/mini/inssel-alpha.brg
   trunk/mono/mono/mini/inssel-arm.brg
   trunk/mono/mono/mini/inssel-hppa.brg
   trunk/mono/mono/mini/inssel-mips.brg
   trunk/mono/mono/mini/inssel.brg
   trunk/mono/mono/mini/mini-arm.c
   trunk/mono/mono/mini/mini-hppa.c
   trunk/mono/mono/mini/mini-mips.c
   trunk/mono/mono/mini/mini-ops.h
   trunk/mono/mono/mini/mini.c
   trunk/mono/mono/mini/ssa.c
Log:
2007-12-14  Zoltan Varga  <[EMAIL PROTECTED]>

        * mini-ops.h: Add OP_SWITCH.

        * mini.c graph.c ssa.c aliasing.c mini-<ARCH>.c inssel-<ARCH>.brg: 
Avoid using
        CEE_SWITCH in back-end code, use OP_SWITCH instead.


Modified: trunk/mono/mono/mini/ChangeLog
===================================================================
--- trunk/mono/mono/mini/ChangeLog      2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/ChangeLog      2007-12-14 14:58:48 UTC (rev 91289)
@@ -1,3 +1,10 @@
+2007-12-14  Zoltan Varga  <[EMAIL PROTECTED]>
+
+       * mini-ops.h: Add OP_SWITCH.
+
+       * mini.c graph.c ssa.c aliasing.c mini-<ARCH>.c inssel-<ARCH>.brg: 
Avoid using
+       CEE_SWITCH in back-end code, use OP_SWITCH instead.
+
 2007-12-11  Geoff Norton  <[EMAIL PROTECTED]>
 
        * mini-s390x.c: Minor change to the MAX() define to allow

Modified: trunk/mono/mono/mini/aliasing.c
===================================================================
--- trunk/mono/mono/mini/aliasing.c     2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/aliasing.c     2007-12-14 14:58:48 UTC (rev 91289)
@@ -643,7 +643,7 @@
        } else if ((inst->opcode == OP_UNBOXCAST) || OP_IS_PCONV (inst->opcode) 
|| OP_IS_ICONV (inst->opcode)) {
                father_alias->type = context.subtree_aliases [0].type;
                father_alias->variable_index = context.subtree_aliases 
[0].variable_index;
-       } else if ((inst->opcode == CEE_LDELEMA) || (inst->opcode == 
OP_COMPARE) || (inst->opcode == CEE_SWITCH)) {
+       } else if ((inst->opcode == CEE_LDELEMA) || (inst->opcode == 
OP_COMPARE) || (inst->opcode == OP_SWITCH)) {
                if (father_alias != NULL) {
                        father_alias->type = MONO_ALIASING_TYPE_NO_ALIAS;
                }

Modified: trunk/mono/mono/mini/graph.c
===================================================================
--- trunk/mono/mono/mini/graph.c        2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/graph.c        2007-12-14 14:58:48 UTC (rev 91289)
@@ -226,7 +226,7 @@
        case OP_BR:
                fprintf (fp, "[B%d]", tree->inst_target_bb->block_num);
                break;
-       case CEE_SWITCH:
+       case OP_SWITCH:
        case CEE_ISINST:
        case CEE_CASTCLASS:
        case OP_OUTARG:

Modified: trunk/mono/mono/mini/inssel-alpha.brg
===================================================================
--- trunk/mono/mono/mini/inssel-alpha.brg       2007-12-14 14:36:35 UTC (rev 
91288)
+++ trunk/mono/mono/mini/inssel-alpha.brg       2007-12-14 14:58:48 UTC (rev 
91289)
@@ -213,7 +213,7 @@
         mono_bblock_add_inst (s->cbb, tree);
 }
 
-stmt: CEE_SWITCH (reg) {
+stmt: OP_SWITCH (reg) {
         MonoInst *label;
         int offset_reg = mono_regstate_next_int (s->rs);
         int target_reg = mono_regstate_next_int (s->rs);

Modified: trunk/mono/mono/mini/inssel-arm.brg
===================================================================
--- trunk/mono/mono/mini/inssel-arm.brg 2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/inssel-arm.brg 2007-12-14 14:58:48 UTC (rev 91289)
@@ -488,7 +488,7 @@
        MONO_EMIT_BIALU (s, tree, tree->opcode, state->reg1, state->left->reg1, 
state->right->reg1);
 }
 
-stmt: CEE_SWITCH (reg) {
+stmt: OP_SWITCH (reg) {
        MonoInst *label;
        int n = GPOINTER_TO_INT (tree->klass);
        

Modified: trunk/mono/mono/mini/inssel-hppa.brg
===================================================================
--- trunk/mono/mono/mini/inssel-hppa.brg        2007-12-14 14:36:35 UTC (rev 
91288)
+++ trunk/mono/mono/mini/inssel-hppa.brg        2007-12-14 14:58:48 UTC (rev 
91289)
@@ -311,7 +311,7 @@
        MONO_EMIT_NEW_ICONST (s, state->reg1, tree->inst_c0);
 }
 
-stmt: CEE_SWITCH (reg) {
+stmt: OP_SWITCH (reg) {
        MonoInst *label, *inst;
        int n = GPOINTER_TO_INT (tree->klass);
        int sreg = mono_regstate_next_int (s->rs);

Modified: trunk/mono/mono/mini/inssel-mips.brg
===================================================================
--- trunk/mono/mono/mini/inssel-mips.brg        2007-12-14 14:36:35 UTC (rev 
91288)
+++ trunk/mono/mono/mini/inssel-mips.brg        2007-12-14 14:58:48 UTC (rev 
91289)
@@ -271,7 +271,7 @@
        mono_bblock_add_inst (s->cbb, tree);
 }
 
-stmt: CEE_SWITCH (reg) {
+stmt: OP_SWITCH (reg) {
        MonoInst *label;
        int n = GPOINTER_TO_INT (tree->klass);
        

Modified: trunk/mono/mono/mini/inssel.brg
===================================================================
--- trunk/mono/mono/mini/inssel.brg     2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/inssel.brg     2007-12-14 14:58:48 UTC (rev 91289)
@@ -807,7 +807,7 @@
        mono_bblock_add_inst (s->cbb, tree);
 }
 
-stmt: CEE_SWITCH (reg) "2" {
+stmt: OP_SWITCH (reg) "2" {
        MonoInst *label;
        int offset_reg = mono_regstate_next_int (s->rs);
        int target_reg = mono_regstate_next_int (s->rs);

Modified: trunk/mono/mono/mini/mini-arm.c
===================================================================
--- trunk/mono/mono/mini/mini-arm.c     2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/mini-arm.c     2007-12-14 14:58:48 UTC (rev 91289)
@@ -2629,7 +2629,7 @@
                case OP_BR_REG:
                        ARM_MOV_REG_REG (code, ARMREG_PC, ins->sreg1);
                        break;
-               case CEE_SWITCH:
+               case OP_SWITCH:
                        /* 
                         * In the normal case we have:
                         *      ldr pc, [pc, ins->sreg1 << 2]

Modified: trunk/mono/mono/mini/mini-hppa.c
===================================================================
--- trunk/mono/mono/mini/mini-hppa.c    2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/mini-hppa.c    2007-12-14 14:58:48 UTC (rev 91289)
@@ -1767,7 +1767,7 @@
                        hppa_nop(code);
                        break;
 
-               case CEE_SWITCH: {
+               case OP_SWITCH: {
                        int i;
 
                        max_len += 8 * GPOINTER_TO_INT (ins->klass);

Modified: trunk/mono/mono/mini/mini-mips.c
===================================================================
--- trunk/mono/mono/mini/mini-mips.c    2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/mini-mips.c    2007-12-14 14:58:48 UTC (rev 91289)
@@ -2483,7 +2483,7 @@
                        mips_jr (code, ins->sreg1);
                        mips_nop (code);
                        break;
-               case CEE_SWITCH: {
+               case OP_SWITCH: {
                        int i;
 
                        max_len += 4 * GPOINTER_TO_INT (ins->klass);

Modified: trunk/mono/mono/mini/mini-ops.h
===================================================================
--- trunk/mono/mono/mini/mini-ops.h     2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/mini-ops.h     2007-12-14 14:58:48 UTC (rev 91289)
@@ -60,6 +60,7 @@
 MINI_OP(OP_REG,                "reg")
 MINI_OP(OP_REGOFFSET,  "regoffset")
 MINI_OP(OP_LABEL,      "label")
+MINI_OP(OP_SWITCH,  "switch")
 MINI_OP(OP_CHECK_ARRAY_TYPE,   "check_array_type")
 MINI_OP(OP_ARRAY_RANK, "array_rank")
 MINI_OP(OP_THROW,      "throw")

Modified: trunk/mono/mono/mini/mini.c
===================================================================
--- trunk/mono/mono/mini/mini.c 2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/mini.c 2007-12-14 14:58:48 UTC (rev 91289)
@@ -124,7 +124,7 @@
 #define MONO_IS_COND_BRANCH_OP(ins) (((ins)->opcode >= CEE_BEQ && 
(ins)->opcode <= CEE_BLT_UN) || ((ins)->opcode >= OP_LBEQ && (ins)->opcode <= 
OP_LBLT_UN) || ((ins)->opcode >= OP_FBEQ && (ins)->opcode <= OP_FBLT_UN) || 
((ins)->opcode >= OP_IBEQ && (ins)->opcode <= OP_IBLT_UN))
 #define MONO_IS_COND_BRANCH_NOFP(ins) (MONO_IS_COND_BRANCH_OP(ins) && 
(ins)->inst_left->inst_left->type != STACK_R8)
 
-#define MONO_IS_BRANCH_OP(ins) (MONO_IS_COND_BRANCH_OP(ins) || ((ins)->opcode 
== OP_BR) || ((ins)->opcode == OP_BR_REG) || ((ins)->opcode == CEE_SWITCH))
+#define MONO_IS_BRANCH_OP(ins) (MONO_IS_COND_BRANCH_OP(ins) || ((ins)->opcode 
== OP_BR) || ((ins)->opcode == OP_BR_REG) || ((ins)->opcode == OP_SWITCH))
 
 #define MONO_CHECK_THIS(ins) (mono_method_signature (cfg->method)->hasthis && 
(ins)->ssa_op == MONO_SSA_LOAD && (ins)->inst_left->inst_c0 == 0)
 
@@ -1858,7 +1858,7 @@
        case CEE_BLE_UN:
        case CEE_BLT_UN:
        case OP_BR:
-       case CEE_SWITCH:
+       case OP_SWITCH:
                prev = bb->code;
                while (prev->next && prev->next != bb->last_ins)
                        prev = prev->next;
@@ -5728,7 +5728,7 @@
                        CHECK_OPSIZE (5);
                        CHECK_STACK (1);
                        n = read32 (ip + 1);
-                       MONO_INST_NEW (cfg, ins, *ip);
+                       MONO_INST_NEW (cfg, ins, OP_SWITCH);
                        --sp;
                        ins->inst_left = *sp;
                        if ((ins->inst_left->type != STACK_I4) && 
(ins->inst_left->type != STACK_PTR)) 
@@ -8639,7 +8639,7 @@
        case OP_CALL_HANDLER:
                printf ("[B%d]", tree->inst_target_bb->block_num);
                break;
-       case CEE_SWITCH:
+       case OP_SWITCH:
        case CEE_ISINST:
        case CEE_CASTCLASS:
        case OP_OUTARG:
@@ -10101,7 +10101,7 @@
                                bb->last_ins->inst_target_bb = repl;
                        }
                        break;
-               case CEE_SWITCH: {
+               case OP_SWITCH: {
                        int i;
                        int n = GPOINTER_TO_INT (bb->last_ins->klass);
                        for (i = 0; i < n; i++ ) {
@@ -10190,7 +10190,7 @@
        }
        
        /* Do not touch BBs following a switch (they are the "default" branch) 
*/
-       if ((previous_bb->last_ins != NULL) && (previous_bb->last_ins->opcode 
== CEE_SWITCH)) {
+       if ((previous_bb->last_ins != NULL) && (previous_bb->last_ins->opcode 
== OP_SWITCH)) {
                return FALSE;
        }
        
@@ -10230,7 +10230,7 @@
                                ((previous_bb->last_ins == NULL) ||
                                ((previous_bb->last_ins->opcode != OP_BR) &&
                                (! (MONO_IS_COND_BRANCH_OP 
(previous_bb->last_ins))) &&
-                               (previous_bb->last_ins->opcode != 
CEE_SWITCH)))) {
+                               (previous_bb->last_ins->opcode != OP_SWITCH)))) 
{
                        for (i = 0; i < previous_bb->out_count; i++) {
                                if (previous_bb->out_bb [i] == target_bb) {
                                        MonoInst *jump;
@@ -11088,7 +11088,7 @@
                                                        if 
((previous_bb->last_ins == NULL) ||
                                                                        
((previous_bb->last_ins->opcode != OP_BR) &&
                                                                        (! 
(MONO_IS_COND_BRANCH_OP (previous_bb->last_ins))) &&
-                                                                       
(previous_bb->last_ins->opcode != CEE_SWITCH))) {
+                                                                       
(previous_bb->last_ins->opcode != OP_SWITCH))) {
                                                                int i;
                                                                /* Make sure 
previous_bb really falls through bb */
                                                                for (i = 0; i < 
previous_bb->out_count; i++) {

Modified: trunk/mono/mono/mini/ssa.c
===================================================================
--- trunk/mono/mono/mini/ssa.c  2007-12-14 14:36:35 UTC (rev 91288)
+++ trunk/mono/mono/mini/ssa.c  2007-12-14 14:58:48 UTC (rev 91289)
@@ -938,7 +938,7 @@
                        inst->opcode = OP_BR;
                        inst->inst_target_bb = target;
                }
-       } else if (inst->opcode == CEE_SWITCH && (evaluate_const_tree (cfg, 
inst->inst_left, &a, carray) == 1) && (a >= 0) && (a < GPOINTER_TO_INT 
(inst->klass))) {
+       } else if (inst->opcode == OP_SWITCH && (evaluate_const_tree (cfg, 
inst->inst_left, &a, carray) == 1) && (a >= 0) && (a < GPOINTER_TO_INT 
(inst->klass))) {
                bb->out_bb [0] = inst->inst_many_bb [a];
                bb->out_count = 1;
                inst->inst_target_bb = bb->out_bb [0];
@@ -972,7 +972,7 @@
 {
        g_assert (inst);
 
-       if (inst->opcode == CEE_SWITCH) {
+       if (inst->opcode == OP_SWITCH) {
                int r1, i, a;
                int cases = GPOINTER_TO_INT (inst->klass);
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to