Some of these depended on analyses being present that aren't provided automatically in NPM. early_dce_clobbers_callgraph.ll was previously inlining a noinline function? cast-call-combine.ll relied on the legacy always-inline pass being a CGSCC pass and getting rerun. Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D88187
24 lines
389 B
LLVM
24 lines
389 B
LLVM
; RUN: opt < %s -instcombine -always-inline -S | FileCheck %s
|
|
|
|
define internal void @foo(i16*) alwaysinline {
|
|
ret void
|
|
}
|
|
|
|
define void @bar() noinline noreturn {
|
|
unreachable
|
|
}
|
|
|
|
define void @test() {
|
|
br i1 false, label %then, label %else
|
|
|
|
then:
|
|
call void @bar()
|
|
unreachable
|
|
|
|
else:
|
|
; CHECK-NOT: call
|
|
call void bitcast (void (i16*)* @foo to void (i8*)*) (i8* null)
|
|
ret void
|
|
}
|
|
|