aboutsummaryrefslogtreecommitdiff
path: root/llvm
diff options
context:
space:
mode:
authorluxufan <luxufan@iscas.ac.cn>2023-08-07 22:05:31 +0800
committerluxufan <luxufan@iscas.ac.cn>2023-08-07 22:06:27 +0800
commit03dec91794ca38e70de6b20cb293a8806a3f84c7 (patch)
treef1e67f4d747414fe1981c73ff3dd32bad7623b0f /llvm
parentbb58748e52ebd48a46de20525ef2c594db044a11 (diff)
downloadllvm-03dec91794ca38e70de6b20cb293a8806a3f84c7.zip
llvm-03dec91794ca38e70de6b20cb293a8806a3f84c7.tar.gz
llvm-03dec91794ca38e70de6b20cb293a8806a3f84c7.tar.bz2
[NFC][SCCP] Regenerate test case
Diffstat (limited to 'llvm')
-rw-r--r--llvm/test/Transforms/SCCP/constant-struct.ll61
1 files changed, 29 insertions, 32 deletions
diff --git a/llvm/test/Transforms/SCCP/constant-struct.ll b/llvm/test/Transforms/SCCP/constant-struct.ll
index 7fd7437..914a600 100644
--- a/llvm/test/Transforms/SCCP/constant-struct.ll
+++ b/llvm/test/Transforms/SCCP/constant-struct.ll
@@ -1,72 +1,69 @@
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 2
; Test that constant structs are folded.
; RUN: opt %s -passes=sccp -S | FileCheck %s
define internal {i64} @struct1() {
+; CHECK-LABEL: define internal { i64 } @struct1() {
+; CHECK-NEXT: ret { i64 } { i64 24 }
+;
%a = insertvalue {i64} undef, i64 24, 0
ret {i64} %a
}
-; CHECK: define internal { i64 } @struct1() {
-; CHECK-NEXT: ret { i64 } { i64 24 }
-; CHECK-NEXT: }
-
define internal {i64, i64} @struct2() {
+; CHECK-LABEL: define internal { i64, i64 } @struct2() {
+; CHECK-NEXT: ret { i64, i64 } { i64 24, i64 undef }
+;
%a = insertvalue {i64, i64} undef, i64 24, 0
ret {i64, i64} %a
}
-; CHECK: define internal { i64, i64 } @struct2() {
-; CHECK-NEXT: ret { i64, i64 } { i64 24, i64 undef }
-; CHECK-NEXT: }
-
define internal {i64, i64, i64} @struct3(i64 %x) {
+; CHECK-LABEL: define internal { i64, i64, i64 } @struct3
+; CHECK-SAME: (i64 [[X:%.*]]) {
+; CHECK-NEXT: [[C:%.*]] = insertvalue { i64, i64, i64 } { i64 24, i64 36, i64 undef }, i64 [[X]], 2
+; CHECK-NEXT: ret { i64, i64, i64 } [[C]]
+;
%a = insertvalue {i64, i64, i64} undef, i64 24, 0
%b = insertvalue {i64, i64, i64} %a, i64 36, 1
%c = insertvalue {i64, i64, i64} %b, i64 %x, 2
ret {i64, i64, i64} %c
}
-; CHECK: define internal { i64, i64, i64 } @struct3(i64 %x) {
-; CHECK-NEXT: %c = insertvalue { i64, i64, i64 } { i64 24, i64 36, i64 undef }, i64 %x, 2
-; CHECK-NEXT: ret { i64, i64, i64 } %c
-; CHECK-NEXT: }
-
; Test(s) for overdefined values.
define internal {i64, i32} @struct4(i32 %x) {
+; CHECK-LABEL: define internal { i64, i32 } @struct4
+; CHECK-SAME: (i32 [[X:%.*]]) {
+; CHECK-NEXT: [[A:%.*]] = insertvalue { i64, i32 } { i64 12, i32 24 }, i32 [[X]], 1
+; CHECK-NEXT: ret { i64, i32 } [[A]]
+;
%a = insertvalue {i64, i32} {i64 12, i32 24}, i32 %x, 1
ret {i64, i32} %a
}
-; CHECK: define internal { i64, i32 } @struct4(i32 %x) {
-; CHECK-NEXT: %a = insertvalue { i64, i32 } { i64 12, i32 24 }, i32 %x, 1
-; CHECK-NEXT: ret { i64, i32 } %a
-; CHECK-NEXT: }
-
define internal {i32} @struct5(i32 %x) {
+; CHECK-LABEL: define internal { i32 } @struct5
+; CHECK-SAME: (i32 [[X:%.*]]) {
+; CHECK-NEXT: [[A:%.*]] = insertvalue { i32 } undef, i32 [[X]], 0
+; CHECK-NEXT: ret { i32 } [[A]]
+;
%a = insertvalue {i32} undef, i32 %x, 0
ret {i32} %a
}
-; CHECK: define internal { i32 } @struct5(i32 %x) {
-; CHECK-NEXT: %a = insertvalue { i32 } undef, i32 %x, 0
-; CHECK-NEXT: ret { i32 } %a
-; CHECK-NEXT: }
-
-
define internal {i32} @struct6({i32} %x) {
+; CHECK-LABEL: define internal { i32 } @struct6
+; CHECK-SAME: ({ i32 } [[X:%.*]]) {
+; CHECK-NEXT: ret { i32 } { i32 12 }
+;
%a = insertvalue {i32} %x, i32 12, 0
ret {i32} %a
}
-; CHECK: define internal { i32 } @struct6({ i32 } %x) {
-; CHECK-NEXT: ret { i32 } { i32 12 }
-; CHECK-NEXT: }
-
define internal {i16} @struct7() {
+; CHECK-LABEL: define internal { i16 } @struct7() {
+; CHECK-NEXT: ret { i16 } { i16 7 }
+;
%a = insertvalue {i16} {i16 4}, i16 7, 0
ret {i16} %a
}
-
-; CHECK: define internal { i16 } @struct7() {
-; CHECK-NEXT: ret { i16 } { i16 7 }
-; CHECK-NEXT: }