[llvm] r236743 - Use intrinsic pattern to make a simpler match

Sanjay Patel spatel at rotateright.com
Thu May 7 09:51:12 PDT 2015


Author: spatel
Date: Thu May  7 11:51:12 2015
New Revision: 236743

URL: http://llvm.org/viewvc/llvm-project?rev=236743&view=rev
Log:
Use intrinsic pattern to make a simpler match

This is a follow-on to r236740 where I took Andrea's advice
in D9504 to remove a redundant pattern...except that I removed
the wrong pattern!

AFAICT, there is no change in the final code produced because 
subsequent passes would clean up the extra instructions created
by the more complicated pattern.


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=236743&r1=236742&r2=236743&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrSSE.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrSSE.td Thu May  7 11:51:12 2015
@@ -3411,9 +3411,8 @@ multiclass avx_fp_unop_s<bits<8> opc, st
                                   mem_cpat:$src)>;
 
    def : Pat<(Intr VR128:$src),
-             (vt (COPY_TO_REGCLASS(
-             !cast<Instruction>("V"#NAME#Suffix##r) (ScalarVT (IMPLICIT_DEF)),
-                    (ScalarVT (COPY_TO_REGCLASS VR128:$src, RC))), VR128))>;
+             (!cast<Instruction>("V"#NAME#Suffix##r_Int) (vt (IMPLICIT_DEF)),
+                                 VR128:$src)>;
 
    def : Pat<(Intr mem_cpat:$src),
              (!cast<Instruction>("V"#NAME#Suffix##m_Int)





More information about the llvm-commits mailing list