search for: dw_tag_base_type

Displaying 20 results from an estimated 54 matches for "dw_tag_base_type".

2012 Feb 11
0
[LLVMdev] DW_TAG_base_type missing DW_AT_name for subrange types
...DW_AT_name i DW_AT_decl_file 1 /home/yuri/test.c DW_AT_decl_line 4 DW_AT_type <144> DW_AT_location DW_OP_fbreg 0 <1>< 134> DW_TAG_base_type DW_AT_name int DW_AT_encoding DW_ATE_signed DW_AT_byte_size 4 <1>< 141> DW_TAG_base_type DW_AT_byte_size 4 DW_AT_encoding DW_ATE_...
2012 Feb 11
2
[LLVMdev] DW_TAG_base_type missing DW_AT_name for subrange types
...DW_AT_name i DW_AT_decl_file 1 /home/yuri/test.c DW_AT_decl_line 4 DW_AT_type <144> DW_AT_location DW_OP_fbreg 0 <1>< 134> DW_TAG_base_type DW_AT_name int DW_AT_encoding DW_ATE_signed DW_AT_byte_size 4 <1>< 141> DW_TAG_base_type DW_AT_byte_size 4 DW_AT_encoding DW_ATE_...
2012 Feb 21
0
[LLVMdev] DW_TAG_base_type missing DW_AT_name for subrange types
On Feb 11, 2012, at 7:51 AM, Yuri Pankov <yuri.pankov at gmail.com> wrote: > Hi, > > ctfconvert is particularly unhappy about that (e.g., ERROR: ctfconvert: > die 141: base type without name). Is it intended behavior? Not that I know of, please file a bug. Thanks! -eric
2017 Apr 04
2
GDB doesn't work with IR-originated debug info
...d got stuck with a GDB error: (gdb) info functions > invalid dwarf2 offset 1849950870 > My module is a DLL built with llc+ld toolchain. Target triple: 'i686-w64-mingw32'. Looking this offset (1849950870 == 0x6e440296) in dwarfdump output of the dll gave the following: 0x00000296: DW_TAG_base_type [10] DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000068f] = "void") DW_AT_encoding [DW_FORM_data1] (0x00) DW_AT_byte_size [DW_FORM_data1] (0x00) .... 0x00000cf8: DW_TAG_subprogram [16] * DW_AT_low_pc [DW_FORM_addr]...
2014 Feb 19
2
[LLVMdev] [lldb-dev] How is variable info retrieved in debugging for executables generated by llvm backend?
...e > .byte 6 # DW_AT_decl_line > .int 127 # DW_AT_type > .byte 2 # DW_AT_location > .byte 145 > .byte 8 > .byte 0 # End Of Children Mark > .byte 5 # Abbrev [5] 0x7f:0x7 DW_TAG_base_type > .int Linfo_string4 # DW_AT_name > .byte 5 # DW_AT_encoding > .byte 4 # DW_AT_byte_size > .byte 5 # Abbrev [5] 0x86:0x7 DW_TAG_base_type > .int Linfo_string7 # DW_AT_name > .byte 6...
2014 Feb 18
1
[LLVMdev] [lldb-dev] How is variable info retrieved in debugging for executables generated by llvm backend?
All of this information is contained in the DWARF debug info that you must generate. Are you generating DWARF? If not, you will need to. If so, please attach an example program that contains DWARF and specify which function you are having trouble getting variable information for. Greg Clayton On Feb 18, 2014, at 12:44 AM, 杨勇勇 <triple.yang at gmail.com> wrote: > Hi, all > > I
2014 Feb 18
4
[LLVMdev] How is variable info retrieved in debugging for executables generated by llvm backend?
Hi, all I ported llvm backend and lldb recently. Both tools can basically work. lldb is able to debug programs in asm style and frame unwinding is OK. But "frame variable XX" does not work because lldb is not able to determine the address of XX from debug info. Can someone give any clue? Thanks in advance. -- 杨勇勇 (Yang Yong-Yong) -------------- next part -------------- An HTML
2013 Nov 26
2
[LLVMdev] llvm-dwarfdump offsets
llvm-dwarfdump currently outputs the offset of each DIE relative to the entire debug_info section. But type/DIE references within a unit are relative to that unit. Should we emit unit-relative offsets instead? I've prototyped this and end up with output something like this: 0x00000051: DW_TAG_base_type [24] DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000051] = "int") DW_AT_encoding [DW_FORM_data1] (0x05) DW_AT_byte_size [DW_FORM_data1] (0x04) 0x00000058: NULL 0x000001ec: Compile Unit: length = 0x0000002b version = 0x0004 abbr_offs...
2015 Apr 29
2
[LLVMdev] Assertion failure (Bug 21609) in DwarfFile.cpp
...a, metadata, metadata) nounwind readnone !7 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !8, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ] !8 = !{!9, !9} !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed] -!10 = !{!"0x101\00p\0016777217\000", !5, !6, !9} ; [ DW_TAG_arg_variable ] [p] [line 1] +!10 = !{!"0x101\00p\001\001\000", !5, !6, !9} ; [ DW_TAG_arg_variable ] [p] [line 1] !11 = !MDLocation(line: 1, scope: !5)...
2011 Dec 07
2
[LLVMdev] Generating DWARF information that pretends an outparam is the return value
...t;, metadata !2, i32 0, i64 0, i64 0, i32 0, i32 0, i32 0, metadata !4, i32 0, i32 0} ; [ DW_TAG_subroutine_type ] !4 = metadata !{metadata !8} > > > !8 = metadata !{i32 589860, metadata !0, metadata !"char", null, i32 0, i64 8, i64 8, i64 0, i32 0, i32 6} ; [ DW_TAG_base_type ] > > Next, when you generate metadata nodes for arguments, slide argument numbers by 1. (http://llvm.org/docs/SourceLevelDebugging.html#format_variables) > > I have not tried this myself, but I hope it helps. > - > Devang >...
2015 Apr 29
2
[LLVMdev] Assertion failure (Bug 21609) in DwarfFile.cpp
...= !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !8, >> null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align >> 0, offset 0] [from ] >> !8 = !{!9, !9} >> !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ >> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc >> DW_ATE_signed] >> -!10 = !{!"0x101\00p\0016777217\000", !5, !6, !9} ; [ >> DW_TAG_arg_variable ] [p] [line 1] >> +!10 = !{!"0x101\00p\001\001\000", !5, !6, !9} ; [ DW_TAG_arg_variable >> ] [p] [li...
2011 Dec 07
0
[LLVMdev] Generating DWARF information that pretends an outparam is the return value
...!{i32 589845, metadata !2, metadata !"", metadata !2, i32 0, i64 0, i64 0, i32 0, i32 0, i32 0, metadata !4, i32 0, i32 0} ; [ DW_TAG_subroutine_type ] !8 = metadata !{i32 589860, metadata !0, metadata !"char", null, i32 0, i64 8, i64 8, i64 0, i32 0, i32 6} ; [ DW_TAG_base_type ] Next, when you generate metadata nodes for arguments, slide argument numbers by 1. (http://llvm.org/docs/SourceLevelDebugging.html#format_variables) I have not tried this myself, but I hope it helps. - Devang -------------- next part --------...
2015 Nov 01
4
Representing X86 long double in Debug Info
...80s are 80bits, while clang declares them as 128bits in the debug info. We might have to special case this in the verifier, but before we do that, I wanted to ask about the following: Reading the DWARF standard, it seems like the following would be a valid description of an X86 80bit long double: DW_TAG_base_type DW_AT_name "long double" DW_AT_byte_size 16 DW_AT_bit_size 80 As far as I can tell from looking through the source code, both LLDB and GDB would read this just fine, it would be a more accurate description of a long double and if we add support for it in LLVM IR, the verifier would...
2010 May 13
4
[LLVMdev] How to get the variable mapping between the source and llvm bytecode
...quot;, metadata !2, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !4, i32 0, null} ; [ DW_TAG_subroutine_type ] !4 = metadata !{metadata !5, metadata !5, metadata !5} !5 = metadata !{i32 458788, metadata !2, metadata !"int", metadata !2, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] !6 = metadata !{i32 1, i32 0, metadata !1, null} !7 = metadata !{i32 459009, metadata !1, metadata !"i", metadata !2, i32 1, metadata !5} ; [ DW_TAG_arg_variable ] !8 = metadata !{i32 459008, metadata !9, metadata !"tmp", metadata !2, i32 2, metadata !5} ; [ DW_TAG_auto_variab...
2011 Dec 05
2
[LLVMdev] Generating DWARF information that pretends an outparam is the return value
The Rust compiler defines all functions as returning void, with the first parameter being an outparam of the declared return type, ie. fn foo2() -> int { ret 5; } becomes define void @_ZN4foo217_5cb557d30658848cE(i64*, { i64, { %tydesc*, i1, {} } }*) uwtable { store i64 5, i64* %0 ret void } I'm working on generating debug information for Rust, and I'm currently stumped on how
2010 May 14
2
[LLVMdev] How to get the variable mapping between the sourceandllvm bytecode
...quot;, metadata !3, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !5, i32 0, null} ; [ DW_TAG_subroutine_type ] !5 = metadata !{metadata !6, metadata !6, metadata !6} !6 = metadata !{i32 458788, metadata !3, metadata !"int", metadata !3, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] !7 = metadata !{i32 4, i32 0, metadata !1, null} +++++++++++++++++++++++++++++++++++++ Now the mapping will be tmp <---->%1. We can't derive the mapping based on "alloca/store" instruction. Best, Kecheng 2010-05-13 From: Eli Friedman Date: 2010-05-13 16:58:05 To:...
2010 Jul 14
2
[LLVMdev] Trying to access the user defined variable name
...ata !2, metadata !"", metadata !2, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !5, i32 0, null} ; [ DW_TAG_subroutine_type ] !5 = metadata !{metadata !6} !6 = metadata !{i32 524324, metadata !2, metadata !"long", metadata !2, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] !7 = metadata !{i32 524545, metadata !1, metadata !"y", metadata !2, i32 1, metadata !6} ; [ DW_TAG_arg_variable ] !8 = metadata !{i32 5, i32 4, metadata !9, null} !9 = metadata !{i32 524299, metadata !1, i32 2, i32 1} ; [ DW_TAG_lexical_block ] !10 = metadata !{i32 524544, metadata !9,...
2016 Mar 31
2
Question about 'isUnsignedDIType' function on DwarfUnit.cpp
Hi All, I have question about 'isUnsignedDIType' function on 'llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp' When we want to generate object file with dwarf debug format, clang can generates 'DW_ATE_lo_user' encoding for complex integer type as follow: "clang/lib/CodeGen/CGDebugInfo.cpp" llvm::DIType *CGDebugInfo::CreateType(const ComplexType *Ty) { ... if
2011 Dec 07
0
[LLVMdev] Generating DWARF information that pretends an outparam is the return value
...0, > i64 0, i64 0, i32 0, i32 0, i32 0, metadata !4, i32 0, i32 0} ; [ > DW_TAG_subroutine_type ] > > > > !4 = metadata !{metadata !8} > > > > !8 = metadata !{i32 589860, metadata !0, metadata !"char", null, i32 0, i64 > 8, i64 8, i64 0, i32 0, i32 6} ; [ DW_TAG_base_type ] > > > Next, when you generate metadata nodes for arguments, slide argument numbers > by 1. (http://llvm.org/docs/SourceLevelDebugging.html#format_variables) > > I have not tried this myself, but I hope it helps. > - > Devang > > > _________________________________...
2010 May 13
0
[LLVMdev] How to get the variable mapping between the source andllvm bytecode
...adata !2, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !4, i32 0, null} ; [ DW_TAG_subroutine_type ] > !4 = metadata !{metadata !5, metadata !5, metadata !5} > !5 = metadata !{i32 458788, metadata !2, metadata !"int", metadata !2, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] > !6 = metadata !{i32 1, i32 0, metadata !1, null} > !7 = metadata !{i32 459009, metadata !1, metadata !"i", metadata !2, i32 1, metadata !5} ; [ DW_TAG_arg_variable ] > !8 = metadata !{i32 459008, metadata !9, metadata !"tmp", metadata !2, i32 2, metadata !5} ; [ DW_...