blob: 32929ac58433f68a05513765256702b6a2ef4eb2 [file] [edit]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
; RUN: opt < %s -passes=sample-profile -sample-profile-file=%S/Inputs/cfi-suffix.prof -S | FileCheck %s
define void @foo.cfi() #0 !dbg !4 {
; CHECK-LABEL: define void @foo.cfi(
; CHECK-SAME: ) #[[ATTR0:[0-9]+]] !dbg [[DBG32:![0-9]+]] !prof [[PROF35:![0-9]+]] {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret void, !dbg [[DBG36:![0-9]+]]
;
entry:
ret void, !dbg !9
}
define void @bar.llvm.1234.cfi() #0 !dbg !8 {
; CHECK-LABEL: define void @bar.llvm.1234.cfi(
; CHECK-SAME: ) #[[ATTR0]] !dbg [[DBG37:![0-9]+]] !prof [[PROF38:![0-9]+]] {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret void, !dbg [[DBG39:![0-9]+]]
;
entry:
ret void, !dbg !10
}
attributes #0 = {"use-sample-profile" "sample-profile-suffix-elision-policy"="selected"}
!llvm.dbg.cu = !{!0}
!llvm.module.flags = !{!11}
!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang", isOptimized: false, runtimeVersion: 0, emissionKind: LineTablesOnly)
!1 = !DIFile(filename: "cfi-suffix.c", directory: ".")
!4 = distinct !DISubprogram(name: "foo", scope: !1, file: !1, line: 1, type: !5, isLocal: false, isDefinition: true, scopeLine: 1, isOptimized: false, unit: !0)
!5 = !DISubroutineType(types: !6)
!6 = !{}
!8 = distinct !DISubprogram(name: "bar", scope: !1, file: !1, line: 3, type: !5, isLocal: false, isDefinition: true, scopeLine: 3, isOptimized: false, unit: !0)
!9 = !DILocation(line: 1, column: 15, scope: !4)
!10 = !DILocation(line: 3, column: 15, scope: !8)
!11 = !{i32 2, !"Debug Info Version", i32 3}
;.
; CHECK: [[META0:![0-9]+]] = distinct !DICompileUnit(language: DW_LANG_C99, file: [[META1:![0-9]+]], producer: "clang", isOptimized: false, runtimeVersion: 0, emissionKind: LineTablesOnly)
; CHECK: [[META1]] = !DIFile(filename: "{{.*}}cfi-suffix.c", directory: {{.*}})
; CHECK: [[DBG32]] = distinct !DISubprogram(name: "foo", scope: [[META1]], file: [[META1]], line: 1, type: [[META33:![0-9]+]], scopeLine: 1, spFlags: DISPFlagDefinition, unit: [[META0]])
; CHECK: [[META33]] = !DISubroutineType(types: [[META34:![0-9]+]])
; CHECK: [[META34]] = !{}
; CHECK: [[PROF35]] = !{!"function_entry_count", i64 1001}
; CHECK: [[DBG36]] = !DILocation(line: 1, column: 15, scope: [[DBG32]])
; CHECK: [[DBG37]] = distinct !DISubprogram(name: "bar", scope: [[META1]], file: [[META1]], line: 3, type: [[META33]], scopeLine: 3, spFlags: DISPFlagDefinition, unit: [[META0]])
; CHECK: [[PROF38]] = !{!"function_entry_count", i64 2001}
; CHECK: [[DBG39]] = !DILocation(line: 3, column: 15, scope: [[DBG37]])
;.