blob: 2cea798c0a64ccd4b48cd1e2c054ccff7396025d [file] [edit]
; RUN: opt -passes=argpromotion -S < %s | FileCheck %s
; Checks if !memprof and !callsite metadata are preserved in argpromotion.
define internal i32 @test(ptr %p) {
%v = load i32, ptr %p
ret i32 %v
}
define void @caller(ptr %p) {
; CHECK: call i32 @test(i32 %{{.*}}), !memprof ![[MEMPROF:[0-9]+]], !callsite ![[CALLSITE:[0-9]+]]
call i32 @test(ptr %p), !memprof !0, !callsite !2
ret void
}
; CHECK: ![[MEMPROF]] = !{![[MIB:[0-9]+]]}
; CHECK: ![[MIB]] = !{![[CALLSITE]], !"cold"}
; CHECK: ![[CALLSITE]] = !{i64 123}
!0 = !{!1}
!1 = !{!2, !"cold"}
!2 = !{i64 123}