forked from OSchip/llvm-project
[SCCP] Regenerate bigint test checks
This commit is contained in:
parent
3678df5ae6
commit
36eb6c0134
|
@ -1,30 +1,32 @@
|
|||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; RUN: opt < %s -sccp -S | FileCheck %s
|
||||
|
||||
@Y = constant [6 x i101] [ i101 12, i101 123456789000000, i101 -12,
|
||||
i101 -123456789000000, i101 0,i101 9123456789000000]
|
||||
i101 -123456789000000, i101 0,i101 9123456789000000]
|
||||
|
||||
; CHECK-LABEL: @array
|
||||
; CHECK-NEXT: ret i101 123456789000000
|
||||
define i101 @array() {
|
||||
%A = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 1
|
||||
%B = load i101, i101* %A
|
||||
%D = and i101 %B, 1
|
||||
%DD = or i101 %D, 1
|
||||
%E = trunc i101 %DD to i32
|
||||
%F = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 %E
|
||||
%G = load i101, i101* %F
|
||||
; CHECK-LABEL: @array(
|
||||
; CHECK-NEXT: ret i101 123456789000000
|
||||
;
|
||||
%A = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 1
|
||||
%B = load i101, i101* %A
|
||||
%D = and i101 %B, 1
|
||||
%DD = or i101 %D, 1
|
||||
%E = trunc i101 %DD to i32
|
||||
%F = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 %E
|
||||
%G = load i101, i101* %F
|
||||
|
||||
ret i101 %G
|
||||
ret i101 %G
|
||||
}
|
||||
|
||||
; CHECK-LABEL: @large_aggregate
|
||||
; CHECK-NEXT: %D = and i101 undef, 1
|
||||
; CHECK-NEXT: %DD = or i101 %D, 1
|
||||
; CHECK-NEXT: %G = getelementptr i101, i101* getelementptr inbounds ([6 x i101], [6 x i101]* @Y, i32 0, i32 5), i101 %DD
|
||||
; CHECK-NEXT: %L3 = load i101, i101* %G
|
||||
; CHECK-NEXT: ret i101 %L3
|
||||
;
|
||||
define i101 @large_aggregate() {
|
||||
; CHECK-LABEL: @large_aggregate(
|
||||
; CHECK-NEXT: [[D:%.*]] = and i101 undef, 1
|
||||
; CHECK-NEXT: [[DD:%.*]] = or i101 [[D]], 1
|
||||
; CHECK-NEXT: [[G:%.*]] = getelementptr i101, i101* getelementptr inbounds ([6 x i101], [6 x i101]* @Y, i32 0, i32 5), i101 [[DD]]
|
||||
; CHECK-NEXT: [[L3:%.*]] = load i101, i101* [[G]], align 4
|
||||
; CHECK-NEXT: ret i101 [[L3]]
|
||||
;
|
||||
%B = load i101, i101* undef
|
||||
%D = and i101 %B, 1
|
||||
%DD = or i101 %D, 1
|
||||
|
@ -34,14 +36,14 @@ define i101 @large_aggregate() {
|
|||
ret i101 %L3
|
||||
}
|
||||
|
||||
; CHECK-LABEL: define i101 @large_aggregate_2() {
|
||||
; CHECK-NEXT: %D = and i101 undef, 1
|
||||
; CHECK-NEXT: %DD = or i101 %D, 1
|
||||
; CHECK-NEXT: %G = getelementptr i101, i101* getelementptr inbounds ([6 x i101], [6 x i101]* @Y, i32 0, i32 5), i101 %DD
|
||||
; CHECK-NEXT: %L3 = load i101, i101* %G
|
||||
; CHECK-NEXT: ret i101 %L3
|
||||
;
|
||||
define i101 @large_aggregate_2() {
|
||||
; CHECK-LABEL: @large_aggregate_2(
|
||||
; CHECK-NEXT: [[D:%.*]] = and i101 undef, 1
|
||||
; CHECK-NEXT: [[DD:%.*]] = or i101 [[D]], 1
|
||||
; CHECK-NEXT: [[G:%.*]] = getelementptr i101, i101* getelementptr inbounds ([6 x i101], [6 x i101]* @Y, i32 0, i32 5), i101 [[DD]]
|
||||
; CHECK-NEXT: [[L3:%.*]] = load i101, i101* [[G]], align 4
|
||||
; CHECK-NEXT: ret i101 [[L3]]
|
||||
;
|
||||
%D = and i101 undef, 1
|
||||
%DD = or i101 %D, 1
|
||||
%F = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 5
|
||||
|
@ -50,10 +52,11 @@ define i101 @large_aggregate_2() {
|
|||
ret i101 %L3
|
||||
}
|
||||
|
||||
; CHECK-LABEL: @index_too_large
|
||||
; CHECK-NEXT: store i101* getelementptr (i101, i101* getelementptr ([6 x i101], [6 x i101]* @Y, i32 0, i32 -1), i101 9224497936761618431), i101** undef
|
||||
; CHECK-NEXT: ret void
|
||||
define void @index_too_large() {
|
||||
; CHECK-LABEL: @index_too_large(
|
||||
; CHECK-NEXT: store i101* getelementptr (i101, i101* getelementptr ([6 x i101], [6 x i101]* @Y, i32 0, i32 -1), i101 9224497936761618431), i101** undef, align 8
|
||||
; CHECK-NEXT: ret void
|
||||
;
|
||||
%ptr1 = getelementptr [6 x i101], [6 x i101]* @Y, i32 0, i32 -1
|
||||
%ptr2 = getelementptr i101, i101* %ptr1, i101 9224497936761618431
|
||||
store i101* %ptr2, i101** undef
|
||||
|
|
Loading…
Reference in New Issue