| ; 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]]) |
| ;. |