[PATCH] D134341: [VE] Remove obsolete ANDrm patterns

Kazushi Marukawa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 21 02:07:07 PDT 2022


kaz7 created this revision.
kaz7 added a reviewer: efocht.
kaz7 added projects: LLVM, VE.
Herald added a subscriber: hiraditya.
Herald added a project: All.
kaz7 requested review of this revision.
Herald added a subscriber: llvm-commits.

Remove obsolete ANDrm patterns for MIMM operands.  We add these
translations to optimize commonly used cast operations before
we support MIMM operands directly by each isntruction.  Such
translations are obsolete now.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D134341

Files:
  llvm/lib/Target/VE/VEInstrInfo.td


Index: llvm/lib/Target/VE/VEInstrInfo.td
===================================================================
--- llvm/lib/Target/VE/VEInstrInfo.td
+++ llvm/lib/Target/VE/VEInstrInfo.td
@@ -2264,17 +2264,6 @@
 def : Pat<(i32 (bitconvert f32:$op)), (l2i (SRALri (f2l $op), 32))>;
 def : Pat<(f32 (bitconvert i32:$op)), (l2f (SLLri (i2l $op), 32))>;
 
-// Optimize code A generated by `(unsigned char)c << 5` to B.
-// A) sla.w.sx %s0, %s0, 5
-//    lea %s1, 224           ; 0xE0
-//    and %s0, %s0, %s1
-// B) sla.w.sx %s0, %s0, 5
-//    and %s0, %s0, (56)0
-
-def : Pat<(i32 (and i32:$val, 0xff)), (l2i (ANDrm (i2l $val), !add(56, 64)))>;
-def : Pat<(i32 (and i32:$val, 0xffff)), (l2i (ANDrm (i2l $val), !add(48, 64)))>;
-def : Pat<(i64 (and i64:$val, 0xffffffff)), (ANDrm $val, !add(32, 64))>;
-
 //===----------------------------------------------------------------------===//
 // Vector Instruction Pattern Stuff
 //===----------------------------------------------------------------------===//


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134341.461821.patch
Type: text/x-patch
Size: 998 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220921/4d3ed790/attachment.bin>


More information about the llvm-commits mailing list