Skip to content

Instantly share code, notes, and snippets.

@jmorse
Created February 12, 2024 16:48
Show Gist options
  • Save jmorse/fc7d5479171b9943ae27d0f03cd9db5c to your computer and use it in GitHub Desktop.
Save jmorse/fc7d5479171b9943ae27d0f03cd9db5c to your computer and use it in GitHub Desktop.
; ModuleID = 'a.ll'
source_filename = "a.ll"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-unknown"
!llvm.dbg.cu = !{!0}
!llvm.module.flags = !{!23}
!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_17, file: !1, producer: "clang", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3, globals: !2, imports: !2, splitDebugInlining: false, debugInfoForProfiling: true, nameTableKind: None)
!1 = !DIFile(filename: "foo.cpp", directory: ".")
!2 = !{}
!3 = !{!4}
!4 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "xyzzy", scope: !6, file: !5, line: 1419, size: 64, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !2, templateParams: !7, identifier: "long")
!5 = !DIFile(filename: "bar.cpp", directory: "")
!6 = !DINamespace(name: "std", scope: null)
!7 = !{!8}
!8 = !DITemplateTypeParameter(name: "_Ty", type: !9)
!9 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "ooolong", scope: !11, file: !10, line: 47, size: 128, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !13, vtableHolder: !22, templateParams: !2, identifier: "long")
!10 = !DIFile(filename: "qux.cpp", directory: "")
!11 = !DINamespace(name: "foon", scope: !12)
!12 = !DINamespace(name: "barn", scope: null)
!13 = !{!14}
!14 = !DIDerivedType(tag: DW_TAG_member, name: "m_callable", scope: !9, file: !10, line: 55, baseType: !15, size: 64, offset: 64)
!15 = distinct !DICompositeType(tag: DW_TAG_class_type, scope: !17, file: !16, line: 116, size: 64, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !2, identifier: "handle")
!16 = !DIFile(filename: "quux.cpp", directory: "")
!17 = distinct !DISubprogram(name: "deref", linkageName: "derefmangled", scope: !18, file: !16, line: 111, type: !19, scopeLine: 112, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, declaration: !21, retainedNodes: !2)
!18 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "counter", scope: !12, file: !16, line: 109, size: 32, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !2, templateParams: !2, identifier: "countermangled")
!19 = distinct !DISubroutineType(types: !20)
!20 = !{null}
!21 = !DISubprogram(name: "deref", linkageName: "derefmangled", scope: !18, file: !16, line: 111, type: !19, scopeLine: 111, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!22 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "magic", scope: !11, file: !10, line: 37, size: 64, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !2, vtableHolder: !22, templateParams: !2, identifier: "magic")
!23 = !{i32 2, !"Debug Info Version", i32 3}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment