dag OutOperandList = (outs GPR32Opnd:$rd);
dag InOperandList = (ins GPR32Opnd:$rs, GPR32Opnd:$rt, LSAImm:$sa);
string AsmString = "lsa\t$rd, $rs, $rt, $sa";
- list<dag> Pattern = [(set GPR32Opnd:$rd, (add GPR32Opnd:$rs,
- (shl GPR32Opnd:$rt,
+ list<dag> Pattern = [(set GPR32Opnd:$rd, (add GPR32Opnd:$rt,
+ (shl GPR32Opnd:$rs,
immZExt2Lsa:$sa)))];
InstrItinClass Itinerary = NoItinerary;
}
declare i32 @llvm.mips.lsa(i32, i32, i32) nounwind
; CHECK: llvm_mips_lsa_test:
-; CHECK: lsa {{\$[0-9]+}}, {{\$[0-9]+}}, {{\$[0-9]+}}, 2
+; CHECK: lsa {{\$[0-9]+}}, $5, $4, 2
; CHECK: .size llvm_mips_lsa_test
define i32 @lsa_test(i32 %a, i32 %b) nounwind {
}
; CHECK: lsa_test:
-; CHECK: lsa {{\$[0-9]+}}, {{\$[0-9]+}}, {{\$[0-9]+}}, 2
+; CHECK: lsa {{\$[0-9]+}}, $5, $4, 2
; CHECK: .size lsa_test