#
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 ...
|
#
bfd22dd7 |
| 09-Sep-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide proper section flags for various BSS flavours
llvm-svn: 81322
|
#
1df58860 |
| 09-Sep-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Whitespace cleanup
llvm-svn: 81321
|
#
b039caa1 |
| 26-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Simplify.
llvm-svn: 80176
|
#
03ded465 |
| 18-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix COFF targets (mingw/cygwin) to provide ehframe and LSDA sections
llvm-svn: 79346
|
#
e4d2e846 |
| 18-Aug-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Text sections should have 'exec' flag set. This seems to unbreak libstdc++ on linux. Patch by Dmitry Gorbachev!
llvm-svn: 79334
|
#
bd3c0337 |
| 17-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Clear the uniquing table when initializing TLOF to avoid a crash when the TLOF is reinitialized with a different MCContext.
llvm-svn: 79253
|
#
94a2c1ac |
| 17-Aug-2009 |
Richard Osborne <richard@xmos.com> |
Update getSectionForConstant() to to allow mergable sections to be nulled out if not supported by the ELF subtarget.
llvm-svn: 79249
|
#
447b9b43 |
| 15-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
the .eh_frame sections we generate need to be writable (which is why they are datarel). This should fix PR4724, and is fallout from r78890.
llvm-svn: 79111
|
#
ddb991c2 |
| 15-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
If ELF subtargets don't want to support 4/8/16-byte mergable sections, allow them to null out the default section pointers.
llvm-svn: 79078
|
#
3e9dbe5a |
| 14-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Make these matching rules more strict so that they don't accidentally match unrelated things.
llvm-svn: 78966
|
#
62e6a8bb |
| 13-Aug-2009 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Remove HasCrazyBSS and add a flag in TAI to indicate that '.section' must be emitted for PowerPC-Linux '.bss' section
llvm-svn: 78958
|
#
607cd3b6 |
| 13-Aug-2009 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Change MCSectionELF to represent a section semantically instead of syntactically as a string, very similiar to what Chris did with MachO. The parsing support and validation is not introduced yet.
ll
Change MCSectionELF to represent a section semantically instead of syntactically as a string, very similiar to what Chris did with MachO. The parsing support and validation is not introduced yet.
llvm-svn: 78890
show more ...
|
#
04b4700e |
| 13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
sink uniquing of sections out of MCContext into the ELF and PECOFF TLOF implementations.
MCContext no longer maintains a string -> section map.
llvm-svn: 78874
|
#
b6913168 |
| 13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add some comments: MCContext owns the MCSections, but it bump pointer allocates them, so it doesn't have to explicitly free them.
llvm-svn: 78870
|
#
c0741ebb |
| 13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
reject invalid code like: int x __attribute__((section("_foo, _bar"))) = 4; int y __attribute__((section("_foo, _bar, 4byte_literals"))) = 1;
llvm-svn: 78867
|
#
2d5bdc2b |
| 12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for uniquing MachO sections.
llvm-svn: 78866
|
#
c4c3c66f |
| 12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
reduce #includage
llvm-svn: 78860
|
#
7c50c9bd |
| 11-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Tidy #includes.
llvm-svn: 78677
|
#
6c20391d |
| 10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
split MachO section handling stuff out to its out .h/.cpp file.
llvm-svn: 78576
|
#
cb307a27 |
| 10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Make the big switch: Change MCSectionMachO to represent a section *semantically* instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly an
Make the big switch: Change MCSectionMachO to represent a section *semantically* instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly and asmprints them in the right format. This also includes parsing and validation support for llvm-mc and "attribute(section)", so we should now start getting errors about invalid section attributes from the compiler instead of the assembler on darwin.
Still todo: 1) Uniquing of darwin mcsections 2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h] 3) there are a few FIXMEs, for example what is the syntax to get the S_GB_ZEROFILL segment type?
llvm-svn: 78547
show more ...
|
#
1cb9396f |
| 08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
1. Make MCSection an abstract class. 2. Move section switch printing to MCSection virtual method which takes a TAI. This eliminates textual formatting stuff from TLOF. 3. Eliminate SwitchToSectio
1. Make MCSection an abstract class. 2. Move section switch printing to MCSection virtual method which takes a TAI. This eliminates textual formatting stuff from TLOF. 3. Eliminate SwitchToSectionDirective, getSectionFlagsAsString, and TLOFELF::AtIsCommentChar.
llvm-svn: 78510
show more ...
|
#
245fdfb9 |
| 08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
make target-specific TLOF impls (except PIC16) create target-specific MCSection instances.
llvm-svn: 78500
|
#
c9ea8fdd |
| 08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate TargetLoweringObjectFileSparc in favor of a TAI hook. A TAI hook is appropriate in this case because this is just an asm syntax issue, not a semantic difference. TLOF should model the seman
eliminate TargetLoweringObjectFileSparc in favor of a TAI hook. A TAI hook is appropriate in this case because this is just an asm syntax issue, not a semantic difference. TLOF should model the semantics of the section.
llvm-svn: 78498
show more ...
|