Skip to content

Commit eaa2634

Browse files
committed
[VE] Remove obsolete ANDrm patterns
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. Reviewed By: efocht Differential Revision: https://reviews.llvm.org/D134341
1 parent a342350 commit eaa2634

File tree

1 file changed

+0
-11
lines changed

1 file changed

+0
-11
lines changed

llvm/lib/Target/VE/VEInstrInfo.td

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2264,17 +2264,6 @@ def : Pat<(i64 (bitconvert f64:$src)), (COPY_TO_REGCLASS $src, I64)>;
22642264
def : Pat<(i32 (bitconvert f32:$op)), (l2i (SRALri (f2l $op), 32))>;
22652265
def : Pat<(f32 (bitconvert i32:$op)), (l2f (SLLri (i2l $op), 32))>;
22662266

2267-
// Optimize code A generated by `(unsigned char)c << 5` to B.
2268-
// A) sla.w.sx %s0, %s0, 5
2269-
// lea %s1, 224 ; 0xE0
2270-
// and %s0, %s0, %s1
2271-
// B) sla.w.sx %s0, %s0, 5
2272-
// and %s0, %s0, (56)0
2273-
2274-
def : Pat<(i32 (and i32:$val, 0xff)), (l2i (ANDrm (i2l $val), !add(56, 64)))>;
2275-
def : Pat<(i32 (and i32:$val, 0xffff)), (l2i (ANDrm (i2l $val), !add(48, 64)))>;
2276-
def : Pat<(i64 (and i64:$val, 0xffffffff)), (ANDrm $val, !add(32, 64))>;
2277-
22782267
//===----------------------------------------------------------------------===//
22792268
// Vector Instruction Pattern Stuff
22802269
//===----------------------------------------------------------------------===//

0 commit comments

Comments
 (0)