#
336c0a1c |
| 19-Feb-2010 |
Bob Wilson <bob.wilson@apple.com> |
Revert Anton's most recent EH patch (r96637), since it breaks a lot of ARM and Thumb tests.
llvm-svn: 96680
|
#
9baeb020 |
| 19-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use the same encoding for EH stuff uniformly on all MachO targets. This hopefulyl should unbreak EH on PPC/Darwin.
llvm-svn: 96637
|
#
cf1f5b02 |
| 17-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use pointer-wide encoding for LSDA and FDE on Darwin. Hopefully, this will fix the remaining issues seen there.
llvm-svn: 96454
|
#
c9adb6a4 |
| 15-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Fix a silly darwin-only typo introduced during merge.
llvm-svn: 96289
|
#
ae4ccc10 |
| 15-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Preliminary patch to improve dwarf EH generation - Hooks to return Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH
Preliminary patch to improve dwarf EH generation - Hooks to return Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there
llvm-svn: 96285
show more ...
|
#
b8479fb3 |
| 08-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
switch ELF @GOTOFF references to use X86MCTargetExpr.
llvm-svn: 95593
|
#
b6b2164e |
| 08-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
add an x86 implementation of MCTargetExpr for representing @GOT and friends. Use it for personality references as a first use.
llvm-svn: 95588
|
#
082f4840 |
| 03-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
make MachineModuleInfoMachO hold non-const MCSymbol*'s instead of const ones. non-const ones aren't very useful, because you can't even, say, emit them.
llvm-svn: 95205
|
#
f62e3ee8 |
| 16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
move the mangler into libtarget from vmcore.
llvm-svn: 93664
|
Revision tags: llvmorg-2.6.0 |
|
#
3a78ce3a |
| 18-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Make a new X8632_MachoTargetObjectFile TLOF implementation whose getSymbolForDwarfGlobalReference is smart enough to know that it needs to register the stub it references with MachineModuleInfoMach
Make a new X8632_MachoTargetObjectFile TLOF implementation whose getSymbolForDwarfGlobalReference is smart enough to know that it needs to register the stub it references with MachineModuleInfoMachO, so that it gets emitted at the end of the file.
Move stub emission from X86ATTAsmPrinter::doFinalization to the new X86ATTAsmPrinter::EmitEndOfAsmFile asmprinter hook. The important thing here is that EmitEndOfAsmFile is called *after* the ehframes are emitted, so we get all the stubs.
This allows us to remove a gross hack from the asmprinter where it would "just know" that it needed to output stubs for personality functions. Now this is all driven from a consistent interface.
The testcase change is just reordering the expected output now that the stubs come out after the ehframe instead of before.
This also unblocks other changes that Bill wants to make.
llvm-svn: 82269
show more ...
|
#
a6ebba27 |
| 17-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
pass machinemoduleinfo down into getSymbolForDwarfGlobalReference, currently unused.
llvm-svn: 82157
|
#
b866602f |
| 16-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Big change #1 for personality function references: Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding fields from MAI: they aren't part of the asm syntax, they are related to the structur
Big change #1 for personality function references: Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding fields from MAI: they aren't part of the asm syntax, they are related to the structure of the object file.
To replace their functionality, add a new TLOF::getSymbolForDwarfGlobalReference method which asks targets to decide how to reference a global from EH in a pc-relative way.
The default implementation just returns the symbol. The default darwin implementation references the symbol through an indirect $non_lazy_ptr stub. The bizarro x86-64 darwin specialization handles the weird "foo@GOTPCREL+4" hack.
DwarfException.cpp now uses this to emit the reference to the symbol in the right way, and this also eliminates another horrible hack from DwarfException.cpp:
- if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL")) - O << "-" << MAI->getPCSymbol();
llvm-svn: 81991
show more ...
|