search for: dw_lang_c99

Displaying 20 results from an estimated 38 matches for "dw_lang_c99".

2017 May 03
3
Should it be legal for two functions to have the same !dbg attachment?
...; RUN: not llvm-as %s -disable-output 2>&1 | FileCheck %s define void @f1() !dbg !4 { unreachable } ; CHECK: DISubprogram attached to more than one function define void @f2() !dbg !4 { unreachable } !llvm.dbg.cu = !{!1} !1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2) !2 = !DIFile(filename: "t.c", directory: "/path/to/dir") !3 = !{} !4 = distinct !DISubprogram(name: "foo", scope: !1, file: !2, unit: !1) Why? When two functions share the same DISubprogram attachment, the DWARF backend gets very confused and adds al...
2018 Mar 21
3
lld/lto/win32 crash on DIE code
...leExpression(var: !1, expr: !DIExpression()) !1 = !DIGlobalVariable(name: "IDispatch_UID", linkageName: "f_t2b_RemObjects_d_Elements_d_System_d_____Global.IDispatchUID", scope: !2, file: !3, type: !622, isLocal: false, isDefinition: true) !2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "RemObjects Island", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !703) !3 = !DIFile(filename: "island.windows.elements-e54b3dc8c0536e29a65f8548b5ae7958-global", directory: "/__wi...
2018 Mar 21
0
lld/lto/win32 crash on DIE code
...ableExpression(var: !1, expr: !DIExpression()) !1 = !DIGlobalVariable(name: "IDispatch_UID", linkageName: "f_t2b_RemObjects_d_Elements_d_System_d_____Global.IDispatchUID", scope: !2, file: !3, type: !622, isLocal: false, isDefinition: true) !2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "RemObjects Island", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !703) !3 = !DIFile(filename: "island.windows.elements-e54b3dc8c0536e29a65f8548b5ae7958-global", directory: "/__window...
2018 Mar 21
0
lld/lto/win32 crash on DIE code
Ok, I've done a bit more investigation. I found the module which declares broken DIE (e54b3dc8c0536e29a65f8548b5ae7958-Global.o) and here is what I found there: !2 = !DIFile(filename: "island.windows.elements", ... ... !4 = distinct !DICompileUnit(language: DW_LANG_C99, file: !5, ... !5 = !DIFile(filename: "island.windows.elements-e54b3dc8c0536e29a65f8548b5ae7958-global", ... All subsequent DIEs reference file !2, except DICompileUnit (!4) which references file !5. This seems a bit strange for me. Can't this be a root cause of your problems? _____...
2018 Mar 21
2
lld/lto/win32 crash on DIE code
Op 21-3-2018 om 10:28 schreef Evgeny Leviant: > It looks the problem lies in how your compiler generates debug info. LLVM doesn't > expect DIDerivedType scope to be an instance of DICompileUnit. Here is a quick fix: > > DIE *DwarfUnit::getOrCreateContextDIE(const DIScope *Context) { > - if (!Context || isa<DIFile>(Context)) > + if (!Context ||
2018 Jan 12
2
StripDeadDebugInfo for static inline functions.
...... } ; Function Attrs: inlinehint nounwind define internal void @delay(i16 %d) #4 !dbg !69 { entry: %d.addr = alloca i16, align 1 %i = alloca i16, align 1 ... } !llvm.dbg.cu = !{!0} !llvm.module.flags = !{!84, !85} !llvm.ident = !{!86} !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.8.0 Revision 72230", isOptimized: true, runtimeVersion: 0, emissionKind: 1, enums: !2, retainedTypes: !3, subprograms: !12, globals: !73) ... !12 = !{!13, !54, !57, !60, !61, !62, !65, !66, !67, !68, !69} !13 = distinct !DISubprogram(name: "ma...
2018 Jan 12
2
StripDeadDebugInfo for static inline functions.
...: inlinehint nounwind define internal void @delay(i16 %d) #4 !dbg !69 { entry: %d.addr = alloca i16, align 1 %i = alloca i16, align 1 ... } !llvm.dbg.cu<http://llvm.dbg.cu> = !{!0} !llvm.module.flags = !{!84, !85} !llvm.ident = !{!86} !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.8.0 Revision 72230", isOptimized: true, runtimeVersion: 0, emissionKind: 1, enums: !2, retainedTypes: !3, subprograms: !12, globals: !73) ... !12 = !{!13, !54, !57, !60, !61, !62, !65, !66, !67, !68, !69} !13 = distinct !DISubprogram(name: "ma...
2018 Jan 12
0
StripDeadDebugInfo for static inline functions.
...!dbg !69 { > > entry: > > %d.addr = alloca i16, align 1 > > %i = alloca i16, align 1 > > ... > > } > > > !llvm.dbg.cu = !{!0} > > !llvm.module.flags = !{!84, !85} > > !llvm.ident = !{!86} > > > !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: > "clang version 3.8.0 Revision 72230", isOptimized: true, runtimeVersion: 0, > emissionKind: 1, enums: !2, retainedTypes: !3, subprograms: !12, globals: > !73) > > ... > > !12 = !{!13, !54, !57, !60, !61, !62, !65, !66, !67, !68, !69} > > !...
2018 Jan 14
0
StripDeadDebugInfo for static inline functions.
...{ > > entry: > > %d.addr = alloca i16, align 1 > > %i = alloca i16, align 1 > > ... > > } > > > > !llvm.dbg.cu = !{!0} > > !llvm.module.flags = !{!84, !85} > > !llvm.ident = !{!86} > > > > !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: > "clang version 3.8.0 Revision 72230", isOptimized: true, runtimeVersion: 0, > emissionKind: 1, enums: !2, retainedTypes: !3, subprograms: !12, globals: > !73) > > ... > > !12 = !{!13, !54, !57, !60, !61, !62, !65, !66, !67, !68, !69} > > !...
2018 Jan 15
1
StripDeadDebugInfo for static inline functions.
...ay(i16 %d) #4 !dbg !69 { > entry: > %d.addr = alloca i16, align 1 > %i = alloca i16, align 1 > ... > } > > !llvm.dbg.cu <http://llvm.dbg.cu/> = !{!0} > !llvm.module.flags = !{!84, !85} > !llvm.ident = !{!86} > > !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.8.0 Revision 72230", isOptimized: true, runtimeVersion: 0, emissionKind: 1, enums: !2, retainedTypes: !3, subprograms: !12, globals: !73) > ... > !12 = !{!13, !54, !57, !60, !61, !62, !65, !66, !67, !68, !69} > !13 = distinct !DISubprogram(na...
2020 Apr 23
2
Debug symbols are missing in elf
...and what was the output? I ran llvm-dwarf with -verbose option. It gave me the verbose print as below 0x0000000b: DW_TAG_compile_unit [1] * DW_AT_producer [DW_FORM_strp] ( .debug_str[0x00000000] = "clang version 8.0.1 ") DW_AT_language [DW_FORM_data2] (DW_LANG_C99) DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000000] = "clang version 8.0.1 ") DW_AT_stmt_list [DW_FORM_sec_offset] (0x00000000) DW_AT_comp_dir [DW_FORM_strp] ( .debug_str[0x00000000] = "clang version 8.0.1 ") Similarly as above...
2011 Apr 30
2
[LLVMdev] DWARF not being generated for local variable, though MD looks right(?)
...----------------------------------- .debug_info contents: 0x00000000: Compile Unit: length = 0x00000043 version = 0x0002 abbr_offset = 0x00000000 addr_size = 0x08 (next CU at 0x00000047) 0x0000000b: TAG_compile_unit [1] * AT_producer( "volta" ) AT_language( DW_LANG_C99 ) AT_name( "a.c" ) AT_entry_pc( 0x0000000000000000 ) AT_stmt_list( 0x00000000 ) AT_comp_dir( "/Users/mmp/foo" ) AT_APPLE_optimized( 0x01 ) AT_APPLE_flags( "-g" ) 0x00000039: TAG_subprogr...
2018 Jan 12
0
StripDeadDebugInfo for static inline functions.
I'm not as familiar with all the ins and outs of metadata as maybe I should be, but ultimately the inlined function should have a DWARF description contained within the description of the caller (which is why you're seeing the call to constructAbstractSubprogramScopeDIE). That suggests that the DISubprogram for the inlined function ought to remain, and its scope should be the
2018 Jan 12
2
StripDeadDebugInfo for static inline functions.
Hi all, I would like to understand the strip-dead-debug-info transformation. In my test case there is a static inline function with two local variables. It appears that the function is already inlined before strip-dead-debug-info starts its work. As a result the DICompileUnit is cleaned and its subprograms list has no reference to the DISubprogram for the inlined function, but as there is
2011 May 02
0
[LLVMdev] DWARF not being generated for local variable, though MD looks right(?)
...-- > .debug_info contents: > > 0x00000000: Compile Unit: length = 0x00000043 version = 0x0002 abbr_offset = 0x00000000 addr_size = 0x08 (next CU at 0x00000047) > > 0x0000000b: TAG_compile_unit [1] * > AT_producer( "volta" ) > AT_language( DW_LANG_C99 ) > AT_name( "a.c" ) > AT_entry_pc( 0x0000000000000000 ) > AT_stmt_list( 0x00000000 ) > AT_comp_dir( "/Users/mmp/foo" ) > AT_APPLE_optimized( 0x01 ) > AT_APPLE_flags( "-g" ) >...
2015 Oct 28
4
RFC: Supporting macros in LLVM debug info
...==== LLVM IR ========================================================= target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-linux" !llvm.dbg.cu = !{!0} !llvm.module.flags = !{!327} !llvm.ident = !{!328} !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.8.0 (trunk 251321)", isOptimized: false, runtimeVersion: 0, emissionKind: 1, enums: !2, macros: !3) !1 = !DIFile(filename: "mainfile.c", directory: "/") !2 = !{} !3 = !{!4, !5, ... <More compiler macros> ... , !312, !313} !4...
2018 Apr 30
0
[SelectionDAG] DbgValue nodes aren't transferred
...data, metadata) #1 attributes #0 = { nounwind ssp uwtable "no-frame-pointer-elim"="true" } attributes #1 = { nounwind readnone } attributes #2 = { nounwind } !llvm.dbg.cu = !{!0} !llvm.module.flags = !{!10, !11, !12} !llvm.ident = !{!13} !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.9.0 ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2) !1 = !DIFile(filename: "test.c", directory: "/Volumes/Data/llvm") !2 = !{} !4 = distinct !DISubprogram(name: "f", scope: !1, file: !1, line:...
2017 Nov 15
2
workaround for debug info bug?
...{ nobuiltin nounwind "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" } attributes #3 = { argmemonly nounwind } !llvm.module.flags = !{!0} !llvm.dbg.cu = !{!1} !0 = !{i32 2, !"Debug Info Version", i32 3} !1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "zig 0.1.1.1f0d561", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !3) !2 = !DIFile(filename: "test", directory: ".") !3 = !{} !4 = distinct !DISubprogram(name: "panic", scope: !5, file: !5, line: 10, type: !6, is...
2018 Apr 30
2
[SelectionDAG] DbgValue nodes aren't transferred
...unwind ssp uwtable "no-frame-pointer-elim"="true" } > attributes #1 = { nounwind readnone } > attributes #2 = { nounwind } > > !llvm.dbg.cu = !{!0} > !llvm.module.flags = !{!10, !11, !12} > !llvm.ident = !{!13} > > !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.9.0 ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2) > !1 = !DIFile(filename: "test.c", directory: "/Volumes/Data/llvm") > !2 = !{} > !4 = distinct !DISubprogram(name: "f", scope: !1,...
2018 Mar 15
1
[SelectionDAG] DbgValue nodes aren't transferred
> On Mar 14, 2018, at 7:55 PM, Se Jong Oh <sejooh at microsoft.com> wrote: > > Hi Jonas, > > Thanks for taking a look! It makes linear-dbg-value.ll pass for my target by producing DEBUG_VALUEs correctly. I also tried a simple function with few operations and confirmed DEBUG_VALUEs which are not produced without trasferDbgValues in SetPromotedInteger. That’s great news! Do