File tree Expand file tree Collapse file tree 2 files changed +6
-6
lines changed
test/Transforms/InstSimplify Expand file tree Collapse file tree 2 files changed +6
-6
lines changed Original file line number Diff line number Diff line change @@ -9393,6 +9393,10 @@ static ConstantRange getRangeForIntrinsic(const IntrinsicInst &II) {
9393
9393
if (!II.getParent () || !II.getFunction ())
9394
9394
break ;
9395
9395
return getVScaleRange (II.getFunction (), Width);
9396
+ case Intrinsic::scmp:
9397
+ case Intrinsic::ucmp:
9398
+ return ConstantRange::getNonEmpty (APInt::getAllOnes (Width),
9399
+ APInt::getOneBitSet (Width, 0 ));
9396
9400
default :
9397
9401
break ;
9398
9402
}
Original file line number Diff line number Diff line change @@ -232,9 +232,7 @@ define <4 x i8> @ucmp_with_addition_vec(<4 x i32> %x) {
232
232
define i1 @scmp_eq_4 (i32 %x , i32 %y ) {
233
233
; CHECK-LABEL: define i1 @scmp_eq_4(
234
234
; CHECK-SAME: i32 [[X:%.*]], i32 [[Y:%.*]]) {
235
- ; CHECK-NEXT: [[TMP1:%.*]] = call i8 @llvm.scmp.i8.i32(i32 [[X]], i32 [[Y]])
236
- ; CHECK-NEXT: [[TMP2:%.*]] = icmp eq i8 [[TMP1]], 4
237
- ; CHECK-NEXT: ret i1 [[TMP2]]
235
+ ; CHECK-NEXT: ret i1 false
238
236
;
239
237
%1 = call i8 @llvm.scmp (i32 %x , i32 %y )
240
238
%2 = icmp eq i8 %1 , 4
@@ -244,9 +242,7 @@ define i1 @scmp_eq_4(i32 %x, i32 %y) {
244
242
define i1 @ucmp_ne_negative_2 (i32 %x , i32 %y ) {
245
243
; CHECK-LABEL: define i1 @ucmp_ne_negative_2(
246
244
; CHECK-SAME: i32 [[X:%.*]], i32 [[Y:%.*]]) {
247
- ; CHECK-NEXT: [[TMP1:%.*]] = call i8 @llvm.ucmp.i8.i32(i32 [[X]], i32 [[Y]])
248
- ; CHECK-NEXT: [[TMP2:%.*]] = icmp ne i8 [[TMP1]], -2
249
- ; CHECK-NEXT: ret i1 [[TMP2]]
245
+ ; CHECK-NEXT: ret i1 true
250
246
;
251
247
%1 = call i8 @llvm.ucmp (i32 %x , i32 %y )
252
248
%2 = icmp ne i8 %1 , -2
You can’t perform that action at this time.
0 commit comments