The legacy PM is deprecated, so update a bunch of lit tests running opt to use the new PM syntax when specifying the pipeline. In this patch focus has been put on test cases for ConstantMerge, ConstraintElimination, CorrelatedValuePropagation, GlobalDCE, GlobalOpt, SCCP, TailCallElim and PredicateInfo. Differential Revision: https://reviews.llvm.org/D114516
42 lines
1.1 KiB
LLVM
42 lines
1.1 KiB
LLVM
; RUN: opt -S -passes=sccp %s
|
|
|
|
@A = external constant i32
|
|
|
|
define void @test1() {
|
|
BB4:
|
|
%A20 = alloca i1
|
|
%A15 = alloca i64
|
|
%A7 = alloca i64
|
|
%A3 = alloca i32**
|
|
%P = getelementptr i32, i32* @A, i32 0
|
|
%B = ptrtoint i32* %P to i64
|
|
%B8 = shl i64 %B, 9223372036854775807
|
|
%G10 = getelementptr i32*, i32** undef, i64 %B
|
|
%B10 = urem i64 %B, %B8
|
|
%B12 = shl i64 %B, %B
|
|
%BB = and i64 %B, %B8
|
|
%B1 = xor i64 %B, %B
|
|
%B23 = lshr i64 %B8, undef
|
|
%C5 = icmp uge i64 %B, %B10
|
|
%C17 = fcmp ord double 4.940660e-324, 0x7FEFFFFFFFFFFFFF
|
|
%C2 = icmp uge i1 %C17, false
|
|
%G = getelementptr i32, i32* %P, i1 %C17
|
|
%X = select i1 false, i712 0, i712 1
|
|
%C4 = icmp ule i1 true, false
|
|
%B3 = xor i1 %C17, %C2
|
|
%C33 = icmp slt i1 false, %C5
|
|
%B15 = sub i64 %B8, %B23
|
|
%C18 = icmp slt i64 undef, %BB
|
|
%G29 = getelementptr i32**, i32*** undef, i64 %B15
|
|
%C35 = icmp eq i1 %C17, undef
|
|
%C31 = icmp ult i1 %C35, %C5
|
|
%C29 = icmp sle i1 true, %C5
|
|
%C16 = icmp ne i16 -1, -32768
|
|
%A24 = alloca i1
|
|
%A21 = alloca i1
|
|
%A25 = alloca i32**
|
|
%C7 = icmp ule i1 %C4, %B3
|
|
%C14 = icmp slt i64 %B8, 0
|
|
ret void
|
|
}
|