about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-07-05 17:08:14 +0200
committerGitHub <noreply@github.com>2022-07-05 17:08:14 +0200
commit1c248ea22fdaf0c7f23d92cca00ebfb589f1d307 (patch)
tree9c7eafa6fb1a36616731174a487d9acff73c49d0
parenta82f4a574efeb44d413035eac5beee61e4611a18 (diff)
parent9eec33464e775bc8d25889ec93614f0144ae1471 (diff)
downloadrust-1c248ea22fdaf0c7f23d92cca00ebfb589f1d307.tar.gz
rust-1c248ea22fdaf0c7f23d92cca00ebfb589f1d307.zip
Rollup merge of #98920 - krasimirgg:llvm-15-issue-37945, r=nikic
adapt issue-37945 codegen test to accept any order of ops

Adapt this test to accept `icmp` operands in any order as a follow-up to https://github.com/rust-lang/rust/commit/cbbf06b0cd39dc93033568f1e65f5363cbbdebcd#commitcomment-77670922.
-rw-r--r--src/test/codegen/issue-37945.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/test/codegen/issue-37945.rs b/src/test/codegen/issue-37945.rs
index 4234c26b5e8..12fa1e9e56b 100644
--- a/src/test/codegen/issue-37945.rs
+++ b/src/test/codegen/issue-37945.rs
@@ -17,7 +17,9 @@ pub fn is_empty_1(xs: Iter<f32>) -> bool {
 // CHECK-NEXT:  start:
 // CHECK-NEXT:    [[A:%.*]] = icmp ne {{i32\*|ptr}} %xs.1, null
 // CHECK-NEXT:    tail call void @llvm.assume(i1 [[A]])
-// CHECK-NEXT:    [[B:%.*]] = icmp eq {{i32\*|ptr}} %xs.1, %xs.0
+// The order between %xs.0 and %xs.1 on the next line doesn't matter
+// and different LLVM versions produce different order.
+// CHECK-NEXT:    [[B:%.*]] = icmp eq {{i32\*|ptr}} {{%xs.0, %xs.1|%xs.1, %xs.0}}
 // CHECK-NEXT:    ret i1 [[B:%.*]]
     {xs}.next().is_none()
 }
@@ -28,7 +30,9 @@ pub fn is_empty_2(xs: Iter<f32>) -> bool {
 // CHECK-NEXT:  start:
 // CHECK-NEXT:    [[C:%.*]] = icmp ne {{i32\*|ptr}} %xs.1, null
 // CHECK-NEXT:    tail call void @llvm.assume(i1 [[C]])
-// CHECK-NEXT:    [[D:%.*]] = icmp eq {{i32\*|ptr}} %xs.1, %xs.0
+// The order between %xs.0 and %xs.1 on the next line doesn't matter
+// and different LLVM versions produce different order.
+// CHECK-NEXT:    [[D:%.*]] = icmp eq {{i32\*|ptr}} {{%xs.0, %xs.1|%xs.1, %xs.0}}
 // CHECK-NEXT:    ret i1 [[D:%.*]]
     xs.map(|&x| x).next().is_none()
 }