[llvm] r241994 - [X86][SSE] (V)PMINSB is commutable.

Simon Pilgrim llvm-dev at redking.me.uk
Sun Jul 12 09:44:12 PDT 2015


Author: rksimon
Date: Sun Jul 12 11:44:11 2015
New Revision: 241994

URL: http://llvm.org/viewvc/llvm-project?rev=241994&view=rev
Log:
[X86][SSE] (V)PMINSB is commutable.

(V)PMINSB is no different to the other (V)PMIN/(V)PMAX B/D/W instructions - it is fully commutable.


Modified:
    llvm/trunk/lib/Target/X86/X86InstrSSE.td

Modified: llvm/trunk/lib/Target/X86/X86InstrSSE.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrSSE.td?rev=241994&r1=241993&r2=241994&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrSSE.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrSSE.td Sun Jul 12 11:44:11 2015
@@ -6834,7 +6834,6 @@ multiclass SS48I_binop_rm2<bits<8> opc,
 }
 
 let Predicates = [HasAVX, NoVLX] in {
-  let isCommutable = 0 in
   defm VPMINSB   : SS48I_binop_rm<0x38, "vpminsb", smin, v16i8, VR128,
                                   loadv2i64, i128mem, 0, SSE_INTALU_ITINS_P>,
                                   VEX_4V;
@@ -6865,7 +6864,6 @@ let Predicates = [HasAVX, NoVLX] in {
 }
 
 let Predicates = [HasAVX2, NoVLX] in {
-  let isCommutable = 0 in
   defm VPMINSBY  : SS48I_binop_rm<0x38, "vpminsb", smin, v32i8, VR256,
                                   loadv4i64, i256mem, 0, SSE_INTALU_ITINS_P>,
                                   VEX_4V, VEX_L;
@@ -6896,7 +6894,6 @@ let Predicates = [HasAVX2, NoVLX] in {
 }
 
 let Constraints = "$src1 = $dst" in {
-  let isCommutable = 0 in
   defm PMINSB   : SS48I_binop_rm<0x38, "pminsb", smin, v16i8, VR128,
                                  memopv2i64, i128mem, 1, SSE_INTALU_ITINS_P>;
   defm PMINSD   : SS48I_binop_rm<0x39, "pminsd", smin, v4i32, VR128,





More information about the llvm-commits mailing list