[test][GlobalOpt] Precommit more tests

And fix up existing tests to not have so much UB.
This commit is contained in:
Arthur Eubanks 2022-06-18 19:36:00 -07:00
parent 54b45afb59
commit 213d489707
1 changed files with 29 additions and 4 deletions

View File

@ -1,10 +1,11 @@
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt -passes=globalopt -S < %s | FileCheck %s
@g1 = internal unnamed_addr global i1 false
@g2 = internal unnamed_addr global i1 false
@g3 = internal unnamed_addr global i1 false
@g4 = internal unnamed_addr global i1 false
@g1 = internal unnamed_addr global i32 0
@g2 = internal unnamed_addr global i32 0
@g3 = internal unnamed_addr global i32 0
@g4 = internal unnamed_addr global i32 0
@g5 = internal unnamed_addr global i32 0
declare void @b()
@ -67,3 +68,27 @@ end:
%r = load i1, ptr @g4
ret i1 %r
}
define i1 @dom_multiple_function_loads() {
; CHECK-LABEL: @dom_multiple_function_loads(
; CHECK-NEXT: store i1 true, ptr @g5, align 1
; CHECK-NEXT: call void @b()
; CHECK-NEXT: [[R:%.*]] = load i1, ptr @g5, align 1
; CHECK-NEXT: ret i1 [[R]]
;
store i1 true, ptr @g5
call void @b()
%r = load i1, ptr @g5
ret i1 %r
}
define i1 @other() {
; CHECK-LABEL: @other(
; CHECK-NEXT: call void @b()
; CHECK-NEXT: [[R:%.*]] = load i1, ptr @g5, align 1
; CHECK-NEXT: ret i1 [[R]]
;
call void @b()
%r = load i1, ptr @g5
ret i1 %r
}