Skip to content

Commit 595fdc8

Browse files
committed
Remove LLVM 19 from try_question_mark_nop
1 parent 35c392e commit 595fdc8

File tree

1 file changed

+11
-24
lines changed

1 file changed

+11
-24
lines changed

tests/codegen/try_question_mark_nop.rs

+11-24
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
//@ compile-flags: -Copt-level=3 -Z merge-functions=disabled
22
//@ edition: 2021
33
//@ only-x86_64
4-
//@ revisions: NINETEEN TWENTY
5-
//@[NINETEEN] exact-llvm-major-version: 19
6-
//@[TWENTY] min-llvm-version: 20
4+
//@ min-llvm-version: 20
75

86
#![crate_type = "lib"]
97
#![feature(try_blocks)]
@@ -16,15 +14,9 @@ use std::ptr::NonNull;
1614
pub fn option_nop_match_32(x: Option<u32>) -> Option<u32> {
1715
// CHECK: start:
1816
// CHECK-NEXT: [[TRUNC:%.*]] = trunc nuw i32 %0 to i1
19-
20-
// NINETEEN-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i32 %0, i32 0
21-
// NINETEEN-NEXT: [[REG2:%.*]] = insertvalue { i32, i32 } poison, i32 [[SELECT]], 0
22-
// NINETEEN-NEXT: [[REG3:%.*]] = insertvalue { i32, i32 } [[REG2]], i32 %1, 1
23-
24-
// TWENTY-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i32 %1, i32 undef
25-
// TWENTY-NEXT: [[REG2:%.*]] = insertvalue { i32, i32 } poison, i32 %0, 0
26-
// TWENTY-NEXT: [[REG3:%.*]] = insertvalue { i32, i32 } [[REG2]], i32 [[SELECT]], 1
27-
17+
// CHECK-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i32 %1, i32 undef
18+
// CHECK-NEXT: [[REG2:%.*]] = insertvalue { i32, i32 } poison, i32 %0, 0
19+
// CHECK-NEXT: [[REG3:%.*]] = insertvalue { i32, i32 } [[REG2]], i32 [[SELECT]], 1
2820
// CHECK-NEXT: ret { i32, i32 } [[REG3]]
2921
match x {
3022
Some(x) => Some(x),
@@ -36,8 +28,8 @@ pub fn option_nop_match_32(x: Option<u32>) -> Option<u32> {
3628
#[no_mangle]
3729
pub fn option_nop_traits_32(x: Option<u32>) -> Option<u32> {
3830
// CHECK: start:
39-
// TWENTY-NEXT: %[[IS_SOME:.+]] = trunc nuw i32 %0 to i1
40-
// TWENTY-NEXT: select i1 %[[IS_SOME]], i32 %1, i32 undef
31+
// CHECK-NEXT: %[[IS_SOME:.+]] = trunc nuw i32 %0 to i1
32+
// CHECK-NEXT: select i1 %[[IS_SOME]], i32 %1, i32 undef
4133
// CHECK-NEXT: insertvalue { i32, i32 }
4234
// CHECK-NEXT: insertvalue { i32, i32 }
4335
// CHECK-NEXT: ret { i32, i32 }
@@ -95,14 +87,9 @@ pub fn control_flow_nop_traits_32(x: ControlFlow<i32, u32>) -> ControlFlow<i32,
9587
pub fn option_nop_match_64(x: Option<u64>) -> Option<u64> {
9688
// CHECK: start:
9789
// CHECK-NEXT: [[TRUNC:%.*]] = trunc nuw i64 %0 to i1
98-
99-
// NINETEEN-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i64 %0, i64 0
100-
// NINETEEN-NEXT: [[REG2:%.*]] = insertvalue { i64, i64 } poison, i64 [[SELECT]], 0
101-
// NINETEEN-NEXT: [[REG3:%.*]] = insertvalue { i64, i64 } [[REG2]], i64 %1, 1
102-
103-
// TWENTY-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i64 %1, i64 undef
104-
// TWENTY-NEXT: [[REG2:%.*]] = insertvalue { i64, i64 } poison, i64 %0, 0
105-
// TWENTY-NEXT: [[REG3:%.*]] = insertvalue { i64, i64 } [[REG2]], i64 [[SELECT]], 1
90+
// CHECK-NEXT: [[SELECT:%.*]] = select i1 [[TRUNC]], i64 %1, i64 undef
91+
// CHECK-NEXT: [[REG2:%.*]] = insertvalue { i64, i64 } poison, i64 %0, 0
92+
// CHECK-NEXT: [[REG3:%.*]] = insertvalue { i64, i64 } [[REG2]], i64 [[SELECT]], 1
10693

10794
// CHECK-NEXT: ret { i64, i64 } [[REG3]]
10895
match x {
@@ -115,8 +102,8 @@ pub fn option_nop_match_64(x: Option<u64>) -> Option<u64> {
115102
#[no_mangle]
116103
pub fn option_nop_traits_64(x: Option<u64>) -> Option<u64> {
117104
// CHECK: start:
118-
// TWENTY-NEXT: %[[TRUNC:[0-9]+]] = trunc nuw i64 %0 to i1
119-
// TWENTY-NEXT: %[[SEL:\.[0-9]+]] = select i1 %[[TRUNC]], i64 %1, i64 undef
105+
// CHECK-NEXT: %[[TRUNC:[0-9]+]] = trunc nuw i64 %0 to i1
106+
// CHECK-NEXT: %[[SEL:\.[0-9]+]] = select i1 %[[TRUNC]], i64 %1, i64 undef
120107
// CHECK-NEXT: insertvalue { i64, i64 }
121108
// CHECK-NEXT: insertvalue { i64, i64 }
122109
// CHECK-NEXT: ret { i64, i64 }

0 commit comments

Comments
 (0)