- Aug 01, 2013
-
-
Carlo Kok authored
Bugfix for making the DWARF debug strings and labels to code emitted as secrel32 instead of long opcodes (only for coff). This makes them debuggable with GDB. fixes Bug 16249 - LLVM generates broken debug info on Windows llvm-svn: 187597
-
- Jul 30, 2013
-
-
Eric Christopher authored
The problem is due to the section name being explicitly mentioned in the IR and differing between the two platforms. llvm-svn: 187394
-
- Jul 29, 2013
-
-
Manman Ren authored
llvm-svn: 187362
-
- Jul 27, 2013
-
-
Benjamin Kramer authored
This makes LLVM emit the same signature regardless of host and target endianess. llvm-svn: 187304
-
Manman Ren authored
Also always add DIType, DISubprogram and DIGlobalVariable to the list in DebugInfoFinder without checking them, so we can verify them later on. llvm-svn: 187285
-
- Jul 26, 2013
-
-
Manman Ren authored
We used to call Verify before adding DICompileUnit to the list, and now we remove the check and always add DICompileUnit to the list in DebugInfoFinder, so we can verify them later on. llvm-svn: 187237
-
Eric Christopher authored
endian independent. llvm-svn: 187222
-
- Jul 25, 2013
-
-
Manman Ren authored
Make sure the context field of DIType is MDNode. Fix testing cases to make them pass the verifier. llvm-svn: 187150
-
Rafael Espindola authored
llvm-svn: 187130
-
Manman Ren authored
Make sure the context and type fields are MDNodes. We will generate verification errors if those fields are non-empty strings. Fix testing cases to make them pass the verifier. llvm-svn: 187106
-
Manman Ren authored
llvm-svn: 187083
-
- Jul 24, 2013
-
-
Manman Ren authored
llvm-svn: 187066
-
Manman Ren authored
Improve the Finder to handle context of a DIVariable used by DbgValueInst. Fix testing cases to make them pass the verifier. llvm-svn: 187052
-
- Jul 23, 2013
-
-
NAKAMURA Takumi authored
llvm-svn: 186930
-
Manman Ren authored
MDNodes used by DbgDeclareInst and DbgValueInst. Another 16 testing cases failed and they are disabled with -disable-debug-info-verifier. A total of 34 cases are disabled with -disable-debug-info-verifier and will be corrected. llvm-svn: 186902
-
- Jul 22, 2013
-
-
Bill Wendling authored
Use the function attributes to pass along the stack protector buffer size. Now that we have robust function attributes, don't use a command line option to specify the stack protecto buffer size. llvm-svn: 186863
-
- Jul 19, 2013
-
-
Manman Ren authored
1> Use DebugInfoFinder to find debug info MDNodes. 2> Add disable-debug-info-verifier to disable verifying debug info. 3> Disable verifying for testing cases that fail (will update the testing cases later on). 4> MDNodes generated by clang can have empty filename for TAG_inheritance and TAG_friend, so DIType::Verify is modified accordingly. Note that DebugInfoFinder does not list all debug info MDNode. For example, clang can generate: metadata !{i32 786468}, which will fail to verify. This MDNode is used by debug info but not included in DebugInfoFinder. This MDNode is generated as a temporary node in DIBuilder::createFunction Value *TElts[] = { GetTagConstant(VMContext, DW_TAG_base_type) }; MDNode::getTemporary(VMContext, TElts) llvm-svn: 186634
-
- Jul 16, 2013
-
-
David Blaikie authored
llvm-svn: 186356
-
- Jul 11, 2013
-
-
Adrian Prantl authored
(reduced LLVM IR) + (full source in comment) with the (full LLVM IR) + (reduced src in comment) llvm-svn: 186119
-
- Jul 10, 2013
-
-
Adrian Prantl authored
llvm-svn: 186035
-
Adrian Prantl authored
llvm-svn: 186031
-
Adrian Prantl authored
Pulled in a testcase from the debuginfo-test suite. llvm-svn: 185993
-
- Jul 09, 2013
-
-
Adrian Prantl authored
llvm-svn: 185972
-
Adrian Prantl authored
Change the informal convention of DBG_VALUE machine instructions so that we can express a register-indirect address with an offset of 0. The old convention was that a DBG_VALUE is a register-indirect value if the offset (operand 1) is nonzero. The new convention is that a DBG_VALUE is register-indirect if the first operand is a register and the second operand is an immediate. For plain register values the combination reg, reg is used. MachineInstrBuilder::BuildMI knows how to build the new DBG_VALUES. rdar://problem/13658587 llvm-svn: 185966
-
- Jul 02, 2013
-
-
David Blaikie authored
llvm-svn: 185398
-
- Jul 01, 2013
-
-
David Blaikie authored
Restrict the current TLS support to X86 ELF for now. Test that we don't produce it on PPC & we can flesh that test case out with the right thing once someone implements it. llvm-svn: 185389
-
- Jun 28, 2013
-
-
David Blaikie authored
Based on GCC's output for TLS variables (OP_constNu, x@dtpoff, OP_lo_user), this implements debug info support for TLS in ELF. Verified that this output is correct/sufficient on Linux (using gold - if you're using binutils-ld, you'll need something with the fix for http://sourceware.org/bugzilla/show_bug.cgi?id=15685 in it). Support on non-ELF is sort of "arbitrary" at the moment - if Apple folks want to discuss (or just go ahead & implement) how this should work in MachO, etc, I'm open. llvm-svn: 185203
-
Manman Ren authored
No functionality change. It should suffice to check the type of a debug info metadata, instead of calling Verify. For cases where we know the type of a DI metadata, use assert. Also update testing cases to make them conform to the format of DI classes. llvm-svn: 185135
-
- Jun 24, 2013
-
-
NAKAMURA Takumi authored
llvm-svn: 184750
-
- Jun 22, 2013
-
-
David Blaikie authored
llvm-svn: 184643
-
- Jun 20, 2013
-
-
David Blaikie authored
llvm-svn: 184443
-
David Blaikie authored
Fix up three tests - one that was relying on abbreviation number, another relying on a location list in this case (& testing raw asm, changed that to use dwarfdump on the debug_info now that that's where the location is), and another which was added in r184368 - exposing a bug in that fix that is exposed when we emit the location inline rather than through a location list. Fix that bug while I'm here. llvm-svn: 184387
-
David Blaikie authored
llvm-svn: 184370
-
- Jun 19, 2013
-
-
David Blaikie authored
We had been papering over a problem with location info for non-trivial types passed by value by emitting their type as references (this caused the debugger to interpret the location information correctly, but broke the type of the function). r183329 corrected the type information but lead to the debugger interpreting the pointer parameter as the value - the debug info describing the location needed an extra dereference. Use a new flag in DIVariable to add the extra indirection (either by promoting an existing DW_OP_reg (parameter passed in a register) to DW_OP_breg + 0 or by adding DW_OP_deref to an existing DW_OP_breg + n (parameter passed on the stack). llvm-svn: 184368
-
- May 29, 2013
-
-
Manman Ren authored
Since the testing case uses ref_addr, which requires version 3+ to work, we will solve the dwarf version issue first. This patch also causes failures in one of the bots. I will update the patch accordingly in my next attempt. rdar://13926659 llvm-svn: 182867
-
Benjamin Kramer authored
llvm-svn: 182834
-
- May 23, 2013
-
-
David Blaikie authored
There were bits & pieces of code lying around that may've given the impression that debug info metadata supported the possibility that a subprogram's type could be specified by a non-subroutine type describing the return type of a void function. This support was incomplete & unnecessary. Asserts & API have been changed to make the desired usage more clear. llvm-svn: 182532
-
- May 21, 2013
-
-
Manman Ren authored
This is to fix PR15408 where an undefined symbol Lline_table_start1 is used. Since we do not generate the debug_line section when .loc is used, Lline_table_start1 is not emitted and we can't refer to it when calculating at_stmt_list for a compile unit. llvm-svn: 182344
-
- May 17, 2013
-
-
Adrian Prantl authored
radar://problem/13865940 llvm-svn: 182062
-
- May 11, 2013
-
-
David Blaikie authored
llvm-svn: 181637
-