mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-01 09:56:07 +00:00

Conversion performed using the script at: https://gist.github.com/nikic/98357b71fd67756b0f064c9517b62a34
26 lines
745 B
LLVM
26 lines
745 B
LLVM
; RUN: opt -passes='function(require<no-op-function>),cgscc(function-attrs)' -disable-output < %s -debug-pass-manager 2>&1 | FileCheck %s
|
|
|
|
; CHECK: Running pass: PostOrderFunctionAttrsPass on (f)
|
|
; CHECK: Invalidating analysis: NoOpFunctionAnalysis on f
|
|
; CHECK-NOT: Invalidating analysis: NoOpFunctionAnalysis on h
|
|
; CHECK: Invalidating analysis: NoOpFunctionAnalysis on g
|
|
; CHECK-NOT: Invalidating analysis: NoOpFunctionAnalysis on h
|
|
; CHECK: Running pass: PostOrderFunctionAttrsPass on (g)
|
|
; CHECK: Running pass: PostOrderFunctionAttrsPass on (h)
|
|
|
|
declare i32 @e(ptr)
|
|
|
|
define i32 @f(i32 %a) {
|
|
ret i32 %a
|
|
}
|
|
|
|
define i32 @g(i32 %b) {
|
|
%c = call i32 @f(i32 %b)
|
|
ret i32 %c
|
|
}
|
|
|
|
define i32 @h(i32 %b) {
|
|
%c = call i32 @e(ptr @f)
|
|
ret i32 %c
|
|
}
|