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-64.ins


From: Klaus Treichel
Subject: [dotgnu-pnet-commits] libjit ChangeLog jit/jit-rules-x86-64.ins
Date: Sun, 06 Jul 2008 14:00:43 +0000

CVSROOT:        /cvsroot/dotgnu-pnet
Module name:    libjit
Changes by:     Klaus Treichel <ktreichel>      08/07/06 14:00:43

Modified files:
        .              : ChangeLog 
        jit            : jit-rules-x86-64.ins 

Log message:
        Add branch and commutative options where applicable and replace chech 
for signed 32bit immediate by imms32 clause.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.383&r2=1.384
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-rules-x86-64.ins?cvsroot=dotgnu-pnet&r1=1.6&r2=1.7

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.383
retrieving revision 1.384
diff -u -b -r1.383 -r1.384
--- ChangeLog   6 Jul 2008 09:07:18 -0000       1.383
+++ ChangeLog   6 Jul 2008 14:00:42 -0000       1.384
@@ -1,3 +1,10 @@
+2008-07-06  Klaus Treichel  <address@hidden>
+
+       * jit/jit-rules-x86-64.ins: Replace the check if an immediate value
+       is a signed 32bit value by using an if clause the new imms32 clause.
+       Flag rules for branch opcodes with the branch option and add the
+       commutative option where appropriate.
+
 2008-07-06  Juan Jesus Garcia de Soria  <address@hidden>
 
        * jit/jit-reg-alloc.c (choose_input_order): take into account global

Index: jit/jit-rules-x86-64.ins
===================================================================
RCS file: /cvsroot/dotgnu-pnet/libjit/jit/jit-rules-x86-64.ins,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- jit/jit-rules-x86-64.ins    24 May 2008 19:40:43 -0000      1.6
+++ jit/jit-rules-x86-64.ins    6 Jul 2008 14:00:42 -0000       1.7
@@ -223,7 +223,7 @@
        [reg] -> {}
 
 JIT_OP_COPY_LONG: copy
-       [=local, imm, if("$2 >= jit_min_int && $2 <= jit_max_int")] -> {
+       [=local, imms32] -> {
                x86_64_mov_membase_imm_size(inst, X86_64_RBP, $1, $2, 8);
        }
        [reg] -> {}
@@ -442,7 +442,7 @@
        }
 
 JIT_OP_SET_PARAM_LONG: note
-       [imm, imm, if("$1 >= jit_min_int && $1 <= jit_max_int")] -> {
+       [imms32, imm] -> {
                x86_64_mov_membase_imm_size(inst, X86_64_RSP, $2, $1, 8);
        }
        [imm, imm] -> {
@@ -735,7 +735,7 @@
        }
 
 JIT_OP_STORE_RELATIVE_LONG: ternary
-       [reg, imm, imm, if("$2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int")] -> {
+       [reg, imms32, imm] -> {
                if($3 == 0)
                {
                        x86_64_mov_regp_imm_size(inst, $1, $2, 8);
@@ -806,7 +806,7 @@
        }
 
 JIT_OP_ADD_RELATIVE:
-       [reg, imm, if("$2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int")] -> {
+       [reg, imms32] -> {
                if($2 != 0)
                {
                        x86_64_add_reg_imm_size(inst, $1, $2, 8);
@@ -1165,7 +1165,7 @@
  */
 
 JIT_OP_LADD: commutative
-       [reg, imm, if("$2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int")] -> {
+       [reg, imms32] -> {
                if($2 == 1)
                {
                        x86_64_inc_reg_size(inst, $1, 8);
@@ -1183,7 +1183,7 @@
        }
 
 JIT_OP_LSUB:
-       [reg, imm, if("$2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int")] -> {
+       [reg, imms32] -> {
                if($2 == 1)
                {
                        x86_64_dec_reg_size(inst, $1, 8);
@@ -1226,7 +1226,7 @@
                }
                x86_64_shl_reg_imm_size(inst, $1, shift, 8);
        }
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int) && ($2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_imul_reg_reg_imm_size(inst, $1, $1, $2, 8);
        }
        [reg, local] -> {
@@ -1452,7 +1452,7 @@
  * single precision float versions
  */
 
-JIT_OP_FADD:
+JIT_OP_FADD:  commutative
        [xreg, imm] -> {
                _jit_xmm1_reg_imm_size_float32(gen, &inst, XMM1_ADD, $1, 
(jit_float32 *)$2);
        }
@@ -1474,7 +1474,7 @@
                x86_64_subss_reg_membase(inst, $1, X86_64_RBP, $2);
        }
 
-JIT_OP_FMUL:
+JIT_OP_FMUL: commutative
        [xreg, imm] -> {
                _jit_xmm1_reg_imm_size_float32(gen, &inst, XMM1_MUL, $1, 
(jit_float32 *)$2);
        }
@@ -1516,7 +1516,7 @@
  * double precision float versions
  */
 
-JIT_OP_DADD:
+JIT_OP_DADD: commutative
        [xreg, imm] -> {
                _jit_xmm1_reg_imm_size_float64(gen, &inst, XMM1_ADD, $1, 
(jit_float64 *)$2);
        }
@@ -1538,7 +1538,7 @@
                x86_64_subsd_reg_reg(inst, $1, $2);
        }
 
-JIT_OP_DMUL:
+JIT_OP_DMUL: commutative
        [xreg, imm] -> {
                _jit_xmm1_reg_imm_size_float64(gen, &inst, XMM1_MUL, $1, 
(jit_float64 *)$2);
        }
@@ -1656,7 +1656,7 @@
        }
 
 JIT_OP_LAND: commutative
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_and_reg_imm_size(inst, $1, $2, 8);
        }
        [reg, local] -> {
@@ -1667,7 +1667,7 @@
        }
 
 JIT_OP_LOR: commutative
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_or_reg_imm_size(inst, $1, $2, 8);
        }
        [reg, local] -> {
@@ -1678,7 +1678,7 @@
        }
 
 JIT_OP_LXOR: commutative
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_xor_reg_imm_size(inst, $1, $2, 8);
        }
        [reg, local] -> {
@@ -1738,7 +1738,7 @@
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
 
-JIT_OP_BR_IEQ: branch
+JIT_OP_BR_IEQ: branch, commutative
        [reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $1, $1, 4);
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
@@ -1756,7 +1756,7 @@
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
 
-JIT_OP_BR_INE: branch
+JIT_OP_BR_INE: branch, commutative
        [reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $1, $1, 4);
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
@@ -1898,12 +1898,12 @@
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
 
-JIT_OP_BR_LEQ: branch
+JIT_OP_BR_LEQ: branch, commutative
        [reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $1, $1, 8);
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
@@ -1916,12 +1916,12 @@
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
 
-JIT_OP_BR_LNE: branch
+JIT_OP_BR_LNE: branch, commutative
        [reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $1, $1, 8);
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
@@ -1935,7 +1935,7 @@
        }
 
 JIT_OP_BR_LLT: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x7C /* lt */, insn);
        }
@@ -1949,7 +1949,7 @@
        }
 
 JIT_OP_BR_LLT_UN: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x72 /* lt_un */, insn);
        }
@@ -1963,7 +1963,7 @@
        }
 
 JIT_OP_BR_LLE: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x7E /* le */, insn);
        }
@@ -1977,7 +1977,7 @@
        }
 
 JIT_OP_BR_LLE_UN: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x76 /* le_un */, insn);
        }
@@ -1991,7 +1991,7 @@
        }
 
 JIT_OP_BR_LGT: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x7F /* gt */, insn);
        }
@@ -2005,7 +2005,7 @@
        }
 
 JIT_OP_BR_LGT_UN: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x77 /* gt_un */, insn);
        }
@@ -2019,7 +2019,7 @@
        }
 
 JIT_OP_BR_LGE: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x7D /* ge */, insn);
        }
@@ -2033,7 +2033,7 @@
        }
 
 JIT_OP_BR_LGE_UN: branch
-       [reg, imm, if("($2 >= (jit_nint)jit_min_int && $2 <= 
(jit_nint)jit_max_int)")] -> {
+       [reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $1, $2, 8);
                inst = output_branch(func, inst, 0x73 /* ge_un */, insn);
        }
@@ -2046,7 +2046,7 @@
                inst = output_branch(func, inst, 0x73 /* ge_un */, insn);
        }
 
-JIT_OP_BR_FEQ:
+JIT_OP_BR_FEQ: branch, commutative
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
@@ -2056,7 +2056,7 @@
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
 
-JIT_OP_BR_FNE:
+JIT_OP_BR_FNE: branch, commutative
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
@@ -2066,7 +2066,7 @@
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
 
-JIT_OP_BR_FLT:
+JIT_OP_BR_FLT: branch
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x72 /* lt_un */, insn);
@@ -2076,7 +2076,7 @@
                inst = output_branch(func, inst, 0x72 /* lt_un */, insn);
        }
 
-JIT_OP_BR_FLE:
+JIT_OP_BR_FLE: branch
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x76 /* le_un */, insn);
@@ -2086,7 +2086,7 @@
                inst = output_branch(func, inst, 0x76 /* le_un */, insn);
        }
 
-JIT_OP_BR_FGT:
+JIT_OP_BR_FGT: branch
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x77 /* gt_un */, insn);
@@ -2096,7 +2096,7 @@
                inst = output_branch(func, inst, 0x77 /* gt_un */, insn);
        }
 
-JIT_OP_BR_FGE:
+JIT_OP_BR_FGE: branch
        [xreg, local] -> {
                x86_64_comiss_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x73 /* ge_un */, insn);
@@ -2106,7 +2106,7 @@
                inst = output_branch(func, inst, 0x73 /* ge_un */, insn);
        }
 
-JIT_OP_BR_DEQ:
+JIT_OP_BR_DEQ: branch, commutative
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
@@ -2116,7 +2116,7 @@
                inst = output_branch(func, inst, 0x74 /* eq */, insn);
        }
 
-JIT_OP_BR_DNE:
+JIT_OP_BR_DNE: branch, commutative
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
@@ -2126,7 +2126,7 @@
                inst = output_branch(func, inst, 0x75 /* ne */, insn);
        }
 
-JIT_OP_BR_DLT:
+JIT_OP_BR_DLT: branch
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x72 /* lt_un */, insn);
@@ -2136,7 +2136,7 @@
                inst = output_branch(func, inst, 0x72 /* lt_un */, insn);
        }
 
-JIT_OP_BR_DLE:
+JIT_OP_BR_DLE: branch
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x76 /* le_un */, insn);
@@ -2146,7 +2146,7 @@
                inst = output_branch(func, inst, 0x76 /* le_un */, insn);
        }
 
-JIT_OP_BR_DGT:
+JIT_OP_BR_DGT: branch
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x77 /* gt_un */, insn);
@@ -2156,7 +2156,7 @@
                inst = output_branch(func, inst, 0x77 /* gt_un */, insn);
        }
 
-JIT_OP_BR_DGE:
+JIT_OP_BR_DGE: branch
        [xreg, local] -> {
                x86_64_comisd_reg_membase(inst, $1, X86_64_RBP, $2);
                inst = output_branch(func, inst, 0x73 /* ge_un */, insn);
@@ -2170,7 +2170,7 @@
  * Comparison opcodes.
  */
 
-JIT_OP_IEQ:
+JIT_OP_IEQ: commutative
        [=reg, reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $2, $2, 4);
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
@@ -2188,7 +2188,7 @@
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
 
-JIT_OP_INE:
+JIT_OP_INE: commutative
        [=reg, reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $2, $2, 4);
                inst = setcc_reg(inst, $1, X86_CC_NE, 0);
@@ -2318,12 +2318,12 @@
                inst = setcc_reg(inst, $1, X86_CC_GE, 0);
        }
 
-JIT_OP_LEQ:
+JIT_OP_LEQ: commutative
        [=reg, reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $2, $2, 8);
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
@@ -2336,12 +2336,12 @@
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
 
-JIT_OP_LNE:
+JIT_OP_LNE: commutative
        [=reg, reg, immzero] -> {
                x86_64_test_reg_reg_size(inst, $2, $2, 8);
                inst = setcc_reg(inst, $1, X86_CC_NE, 0);
        }
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_NE, 0);
        }
@@ -2355,7 +2355,7 @@
        }
 
 JIT_OP_LLT:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_LT, 1);
        }
@@ -2369,7 +2369,7 @@
        }
 
 JIT_OP_LLT_UN:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_LT, 0);
        }
@@ -2383,7 +2383,7 @@
        }
 
 JIT_OP_LLE:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_LE, 1);
        }
@@ -2397,7 +2397,7 @@
        }
 
 JIT_OP_LLE_UN:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_LE, 0);
        }
@@ -2411,7 +2411,7 @@
        }
 
 JIT_OP_LGT:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_GT, 1);
        }
@@ -2425,7 +2425,7 @@
        }
 
 JIT_OP_LGT_UN:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_GT, 0);
        }
@@ -2439,7 +2439,7 @@
        }
 
 JIT_OP_LGE:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_GE, 1);
        }
@@ -2453,7 +2453,7 @@
        }
 
 JIT_OP_LGE_UN:
-       [=reg, reg, imm, if("$3 >= (jit_nint)jit_min_int && $3 <= 
(jit_nint)jit_max_int")] -> {
+       [=reg, reg, imms32] -> {
                x86_64_cmp_reg_imm_size(inst, $2, $3, 8);
                inst = setcc_reg(inst, $1, X86_CC_GE, 0);
        }
@@ -2466,13 +2466,13 @@
                inst = setcc_reg(inst, $1, X86_CC_GE, 0);
        }
 
-JIT_OP_FEQ:
+JIT_OP_FEQ: commutative
        [=reg, xreg, xreg] -> {
                x86_64_comiss_reg_reg(inst, $2, $3);
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
 
-JIT_OP_FNE:
+JIT_OP_FNE: commutative
        [=reg, xreg, xreg] -> {
                x86_64_comiss_reg_reg(inst, $2, $3);
                inst = setcc_reg(inst, $1, X86_CC_NE, 0);
@@ -2502,13 +2502,13 @@
                inst = setcc_reg(inst, $1, X86_CC_AE, 0);
        }
 
-JIT_OP_DEQ:
+JIT_OP_DEQ: commutative
        [=reg, xreg, xreg] -> {
                x86_64_comisd_reg_reg(inst, $2, $3);
                inst = setcc_reg(inst, $1, X86_CC_EQ, 0);
        }
 
-JIT_OP_DNE:
+JIT_OP_DNE: commutative
        [=reg, xreg, xreg] -> {
                x86_64_comisd_reg_reg(inst, $2, $3);
                inst = setcc_reg(inst, $1, X86_CC_NE, 0);
@@ -2557,55 +2557,55 @@
 /*
  * Absolute, minimum, maximum, and sign.
  */
-JIT_OP_IMAX:
+JIT_OP_IMAX: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 4);
                x86_64_cmov_reg_reg_size(inst, X86_CC_LT, $1, $2, 1, 4);
        }
 
-JIT_OP_IMAX_UN:
+JIT_OP_IMAX_UN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 4);
                x86_64_cmov_reg_reg_size(inst, X86_CC_LT, $1, $2, 0, 4);
        }
 
-JIT_OP_IMIN:
+JIT_OP_IMIN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 4);
                x86_64_cmov_reg_reg_size(inst, X86_CC_GT, $1, $2, 1, 4);
        }
 
-JIT_OP_IMIN_UN:
+JIT_OP_IMIN_UN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 4);
                x86_64_cmov_reg_reg_size(inst, X86_CC_GT, $1, $2, 0, 4);
        }
 
-JIT_OP_LMAX:
+JIT_OP_LMAX: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 8);
                x86_64_cmov_reg_reg_size(inst, X86_CC_LT, $1, $2, 1, 8);
        }
 
-JIT_OP_LMAX_UN:
+JIT_OP_LMAX_UN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 8);
                x86_64_cmov_reg_reg_size(inst, X86_CC_LT, $1, $2, 0, 8);
        }
 
-JIT_OP_LMIN:
+JIT_OP_LMIN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 8);
                x86_64_cmov_reg_reg_size(inst, X86_CC_GT, $1, $2, 1, 8);
        }
 
-JIT_OP_LMIN_UN:
+JIT_OP_LMIN_UN: commutative
        [reg, reg] -> {
                x86_64_cmp_reg_reg_size(inst, $1, $2, 8);
                x86_64_cmov_reg_reg_size(inst, X86_CC_GT, $1, $2, 0, 8);
        }
 
-JIT_OP_FMAX:
+JIT_OP_FMAX: commutative
        [xreg, local] -> {
                x86_64_maxss_reg_membase(inst, $1, X86_64_RBP, $2);
        }
@@ -2613,7 +2613,7 @@
                x86_64_maxss_reg_reg(inst, $1, $2);
        }
 
-JIT_OP_FMIN:
+JIT_OP_FMIN: commutative
        [xreg, local] -> {
                x86_64_minss_reg_membase(inst, $1, X86_64_RBP, $2);
        }
@@ -2621,7 +2621,7 @@
                x86_64_minss_reg_reg(inst, $1, $2);
        }
 
-JIT_OP_DMAX:
+JIT_OP_DMAX: commutative
        [xreg, local] -> {
                x86_64_maxsd_reg_membase(inst, $1, X86_64_RBP, $2);
        }
@@ -2629,7 +2629,7 @@
                x86_64_maxsd_reg_reg(inst, $1, $2);
        }
 
-JIT_OP_DMIN:
+JIT_OP_DMIN: commutative
        [xreg, local] -> {
                x86_64_minsd_reg_membase(inst, $1, X86_64_RBP, $2);
        }




reply via email to

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