Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Implement .cfi_escape. Patch by Brian Anderson! | Rafael Espindola | 2011-12-29 | 1 | -0/+4 | |
| | | | | llvm-svn: 147352 | |||||
* | Re-re-enable compact unwind after fixing a failure in ↵ | Bill Wendling | 2011-12-15 | 1 | -2/+1 | |
| | | | | | | SingleSource/Benchmarks/Shootout-C++/except.cpp and friends. It was encoding the stored registers in the wrong order. llvm-svn: 146617 | |||||
* | Disable to review some failures. | Bill Wendling | 2011-12-14 | 1 | -1/+2 | |
| | | | | llvm-svn: 146545 | |||||
* | The second part of support for generating dwarf for assembly source files. This | Kevin Enderby | 2011-12-09 | 1 | -0/+339 | |
| | | | | | | | | | | generates the dwarf Compile Unit DIE and a dwarf subprogram DIE for each non-temporary label. The next part will be to get the clang driver to enable this when assembling a .s file. rdar://9275556 llvm-svn: 146262 | |||||
* | Re-enable compact unwind. It seems to work now. <rdar://problem/10441838> | Bill Wendling | 2011-12-06 | 1 | -4/+1 | |
| | | | | llvm-svn: 145977 | |||||
* | Disable generation of compact unwind encodings. <rdar://problem/10441578> | Bob Wilson | 2011-11-14 | 1 | -1/+2 | |
| | | | | | | | This still seems to be causing some failures. It needs more testing before it gets enabled again. llvm-svn: 144543 | |||||
* | Remove FIXME comment that should have been removed with r144351. | Bob Wilson | 2011-11-11 | 1 | -1/+0 | |
| | | | | llvm-svn: 144392 | |||||
* | Reenable compact unwinding now that <rdar://problem/10430076> is fixed. | Bill Wendling | 2011-11-11 | 1 | -1/+1 | |
| | | | | llvm-svn: 144351 | |||||
* | Disable compact unwind generation until I can solve the codegen problems. | Bill Wendling | 2011-11-11 | 1 | -1/+2 | |
| | | | | llvm-svn: 144346 | |||||
* | Simplify code. No functionality change. | Benjamin Kramer | 2011-11-09 | 1 | -8/+2 | |
| | | | | llvm-svn: 144186 | |||||
* | Emit the compact unwind *if* we have a compact unwind encoding. | Bill Wendling | 2011-11-08 | 1 | -1/+1 | |
| | | | | | | *headdesk* llvm-svn: 144138 | |||||
* | Simplify some uses of utohexstr. | Benjamin Kramer | 2011-11-07 | 1 | -3/+2 | |
| | | | | | | As a side effect hex is printed lowercase instead of uppercase now. llvm-svn: 144013 | |||||
* | As a first step, emit both the compact unwind and CIE/FDEs for a function. | Bill Wendling | 2011-09-06 | 1 | -13/+7 | |
| | | | | llvm-svn: 139152 | |||||
* | Some autoconf tests use module level inline asm to test compiler's handling of | Evan Cheng | 2011-08-24 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | .cfi_startproc. e.g. libffi: $ cat confopt.c asm (".cfi_startproc\n\t.cfi_endproc"); int main () { return 0; } Teach MC / dwarf emission to handle these cfi directives which essentially create an empty frame. rdar://10017184 llvm-svn: 138504 | |||||
* | Emit the __compact_unwind section first. If there are any frames which weren't | Bill Wendling | 2011-07-22 | 1 | -14/+27 | |
| | | | | | | emitted, emit them next as CIE/FDEs. llvm-svn: 135807 | |||||
* | Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc. | Evan Cheng | 2011-07-20 | 1 | -7/+3 | |
| | | | | | | | There is still a bit more refactoring left to do in Targets. But we are now very close to fixing all the layering issues in MC. llvm-svn: 135611 | |||||
* | Add MCObjectFileInfo and sink the MCSections initialization code from | Evan Cheng | 2011-07-20 | 1 | -12/+19 | |
| | | | | | | | | TargetLoweringObjectFileImpl down to MCObjectFileInfo. TargetAsmInfo is done to one last method. It's *almost* gone! llvm-svn: 135569 | |||||
* | Micro-opt: Only emit compact unwind if there is a compact unwind encoding to ↵ | Bill Wendling | 2011-07-19 | 1 | -1/+1 | |
| | | | | | | emit. llvm-svn: 135452 | |||||
* | Use the CompactUnwindEncoding from the Frame, if it's defined. | Bill Wendling | 2011-07-19 | 1 | -7/+2 | |
| | | | | llvm-svn: 135451 | |||||
* | Move getInitialFrameState from TargetFrameInfo to MCAsmInfo (suggestions for | Evan Cheng | 2011-07-18 | 1 | -1/+2 | |
| | | | | | | better location welcome). llvm-svn: 135438 | |||||
* | Sink getDwarfRegNum, getLLVMRegNum, getSEHRegNum from TargetRegisterInfo down | Evan Cheng | 2011-07-18 | 1 | -5/+6 | |
| | | | | | | | | | to MCRegisterInfo. Also initialize the mapping at construction time. This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step towards fixing the layering violation. llvm-svn: 135424 | |||||
* | Move some parts of TargetAsmInfo down to MCAsmInfo. This is not the greatest | Evan Cheng | 2011-07-15 | 1 | -26/+26 | |
| | | | | | | | solution but it is a small step towards removing the horror that is TargetAsmInfo. llvm-svn: 135237 | |||||
* | Remove setting the bit for personality function. It should be set by the linker. | Bill Wendling | 2011-07-15 | 1 | -3/+0 | |
| | | | | llvm-svn: 135236 | |||||
* | Encode that we have a personality function. | Bill Wendling | 2011-07-15 | 1 | -0/+3 | |
| | | | | llvm-svn: 135227 | |||||
* | * If we have an LSDA, we need to mark it in the encoding. | Bill Wendling | 2011-07-14 | 1 | -1/+5 | |
| | | | | | | * The personality function should be encoded as an absolute pointer to the function. llvm-svn: 135215 | |||||
* | Unfortunately several files in MC are badly violating layering rule by using | Evan Cheng | 2011-07-14 | 1 | -2/+6 | |
| | | | | | | | | | TargetAsmInfo, which in turn pulls in TargetRegisterInfo, etc. :-( There are other cases of violations, but this is probably the worst. This patch is but one small step towards fixing this. 500 more steps to go. :-( llvm-svn: 135131 | |||||
* | Don't emit the FDE end label if the last thing emitted was a compact unwind and | Bill Wendling | 2011-07-13 | 1 | -1/+3 | |
| | | | | | | not the FDE llvm-svn: 135020 | |||||
* | Add a target hook to encode the compact unwind information. | Bill Wendling | 2011-07-07 | 1 | -6/+8 | |
| | | | | llvm-svn: 134577 | |||||
* | Clean up the #includes. | Bill Wendling | 2011-07-06 | 1 | -5/+4 | |
| | | | | llvm-svn: 134557 | |||||
* | Remove tabs. | Bill Wendling | 2011-06-30 | 1 | -6/+6 | |
| | | | | llvm-svn: 134212 | |||||
* | Improve comment: Show the register the DWARF label is added to. | Bill Wendling | 2011-06-30 | 1 | -1/+2 | |
| | | | | llvm-svn: 134209 | |||||
* | Add one more comment to the FDE verbose asm output. | Bill Wendling | 2011-06-30 | 1 | -0/+1 | |
| | | | | llvm-svn: 134200 | |||||
* | Add comments to the FDE. | Bill Wendling | 2011-06-30 | 1 | -5/+13 | |
| | | | | llvm-svn: 134196 | |||||
* | Add more comments to the ASM output for the CIE's "moves". | Bill Wendling | 2011-06-30 | 1 | -1/+20 | |
| | | | | llvm-svn: 134194 | |||||
* | Add comments to the ASM output to help understand the compact unwind and CIE ↵ | Bill Wendling | 2011-06-30 | 1 | -6/+61 | |
| | | | | | | tables. llvm-svn: 134191 | |||||
* | * Use the proper size to output the range size. | Bill Wendling | 2011-06-30 | 1 | -1/+8 | |
| | | | | | | * Rough in the compact encoding part. llvm-svn: 134119 | |||||
* | Stupid error: If the LSDA and Personality functions aren't there, emit 0 instead | Bill Wendling | 2011-06-29 | 1 | -10/+8 | |
| | | | | | | of the encoding. llvm-svn: 134117 | |||||
* | We don't want to use relocations inside the compact unwind section. Just use the | Bill Wendling | 2011-06-29 | 1 | -4/+19 | |
| | | | | | | symbols instead. llvm-svn: 134115 | |||||
* | Use a reference. Don't make a useless copy of the vector. | Bill Wendling | 2011-06-23 | 1 | -1/+1 | |
| | | | | llvm-svn: 133707 | |||||
* | Formatting changes. No functionality change. | Bill Wendling | 2011-06-23 | 1 | -32/+30 | |
| | | | | llvm-svn: 133706 | |||||
* | Use the presence of the __compact_unwind section to indicate that a target | Bill Wendling | 2011-06-23 | 1 | -1/+1 | |
| | | | | | | supports compact unwind info instead of having a separate flag indicating this. llvm-svn: 133685 | |||||
* | Some skeleton code to emit the compact unwind. If the information is unable to | Bill Wendling | 2011-06-23 | 1 | -1/+63 | |
| | | | | | | be emitted in a compact way, we then default to emitting a CIE and FDE. llvm-svn: 133676 | |||||
* | Directly print to a raw_ostream instead of printing to a buffer first. | Benjamin Kramer | 2011-06-18 | 1 | -4/+1 | |
| | | | | llvm-svn: 133352 | |||||
* | No reason not to allow defining the CFA as a reg w/ offset zero. | Jim Grosbach | 2011-05-20 | 1 | -2/+0 | |
| | | | | llvm-svn: 131760 | |||||
* | Avoid a gcc warning. | Rafael Espindola | 2011-05-10 | 1 | -1/+2 | |
| | | | | llvm-svn: 131161 | |||||
* | On MachO, unlike ELF, there should be no relocation to produce the CIE pointer. | Rafael Espindola | 2011-05-10 | 1 | -8/+17 | |
| | | | | llvm-svn: 131149 | |||||
* | The EH symbols are only needed in eh_frame, not debug_frame. | Rafael Espindola | 2011-05-10 | 1 | -2/+2 | |
| | | | | llvm-svn: 131146 | |||||
* | In a debug_frame the cfi offset is to the start of the debug_frame section! | Rafael Espindola | 2011-05-10 | 1 | -3/+7 | |
| | | | | llvm-svn: 131129 | |||||
* | Add support for producing .deubg_frame sections. | Rafael Espindola | 2011-05-10 | 1 | -45/+59 | |
| | | | | llvm-svn: 131121 | |||||
* | Small cleanups. | Rafael Espindola | 2011-05-10 | 1 | -8/+5 | |
| | | | | llvm-svn: 131120 |