| #
b58dc1c6 |
| 04-Aug-2009 |
Chris Lattner <[email protected]> |
make MergeableCString be a SectionKind "abstract class", and add new concrete versions for 1/2/4-byte mergable strings.
These are not actually created yet.
llvm-svn: 78055
|
| #
d2c179c8 |
| 03-Aug-2009 |
Chris Lattner <[email protected]> |
Eliminate textual section switching from the x86 backend, one more step towards "semantics sections"
llvm-svn: 78002
|
| #
1472cf5b |
| 02-Aug-2009 |
Chris Lattner <[email protected]> |
move dwarf debug info section selection stuff from TAI to TLOF, unifying all the dwarf targets at the same time.
llvm-svn: 77889
|
| #
c784feba |
| 02-Aug-2009 |
Chris Lattner <[email protected]> |
convert EHFrameSection to be managed by TLOF instead of TAI.
llvm-svn: 77888
|
| #
c16c75ea |
| 02-Aug-2009 |
Chris Lattner <[email protected]> |
move getDwarfExceptionSection from TAI to TLOF and rename it to getLSDASection() to be more specific. This makes it pretty obvious that the ELF LSDA section is being specified wrong in PIC mode. W
move getDwarfExceptionSection from TAI to TLOF and rename it to getLSDASection() to be more specific. This makes it pretty obvious that the ELF LSDA section is being specified wrong in PIC mode. We're probably getting a lot of startup-time relocations to a readonly page, which is expensive and bad.
Someone who cares about ELF C++ should investigate this.
llvm-svn: 77847
show more ...
|
| #
4e7dfafc |
| 02-Aug-2009 |
Chris Lattner <[email protected]> |
convert ctors/dtors section to be in TLOF instead of TAI.
llvm-svn: 77842
|
| #
f8d9710b |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
(re)introduce new simpler apis for creation sectionkinds.
llvm-svn: 77834
|
| #
0c40266b |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
Remove "JumpTableDataSection" from TAI, instead, have AsmPrinter compute it based on what it knows. As part of this, rename getSectionForMergeableConstant to getSectionForConstant because it works f
Remove "JumpTableDataSection" from TAI, instead, have AsmPrinter compute it based on what it knows. As part of this, rename getSectionForMergeableConstant to getSectionForConstant because it works for non-mergable constants also.
The only functionality change from this is that Xcore will start dropping its jump tables into readonly section instead of data section in -static mode. This should be fine as the linker resolves the relocations. If this is a problem, let me know and we'll come up with another solution.
llvm-svn: 77833
show more ...
|
| #
d5c01136 |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
fix a fixme by sinking various target-specific directives down into the appropriate subclasses.
llvm-svn: 77815
|
| #
286326ed |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
coff also doesn't have a ReadOnlySection yet, (!)
llvm-svn: 77814
|
| #
bc3d5f5d |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
coff doesn't set a .bss seciton, so this is dead.
llvm-svn: 77813
|
| #
26fb277f |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
it turns out that isWeak() was basically dead anyway. Kill off SectionInfo :-/
llvm-svn: 77812
|
| #
72c3e774 |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
don't use isWeak anymore.
llvm-svn: 77810
|
| #
c9c277ba |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
Change SectionKind to be a property that is true of a *section*, it should have no state that is specific to particular globals in the section. In this case, it means the removal of the "isWeak" and
Change SectionKind to be a property that is true of a *section*, it should have no state that is specific to particular globals in the section. In this case, it means the removal of the "isWeak" and "ExplicitSection" bits. MCSection uses the new form of SectionKind.
To handle isWeak, I introduced a new SectionInfo class, which is SectionKind + isWeak, and it is used by the part of the code generator that does classification of a specific global.
The ExplicitSection disappears. It is moved onto MCSection as a new "IsDirective" bit. Since the Name of a section is either a section or directive, it makes sense to keep this bit in MCSection. Ultimately the creator of MCSection should canonicalize (e.g.) .text to whatever the actual section is.
llvm-svn: 77803
show more ...
|
| #
95bad379 |
| 01-Aug-2009 |
Chris Lattner <[email protected]> |
All MCSections are now required to have a SectionKind.
llvm-svn: 77787
|
| #
d25701c1 |
| 31-Jul-2009 |
Chris Lattner <[email protected]> |
move emitUsedDirectiveFor to TargetLoweringObjectFile and rename it to indicate that it is a predicate, not an emitter. This eliminates TAI dependencies on Mangler and GlobalValue.
llvm-svn: 77726
|
| #
4d2c0f90 |
| 31-Jul-2009 |
Chris Lattner <[email protected]> |
switch off of 'Section' onto MCSection. We're not properly using MCSection subclasses yet, but this is a step in the right direction.
llvm-svn: 77708
|
| #
51d5b43c |
| 31-Jul-2009 |
Chris Lattner <[email protected]> |
refactor section construction in TLOF to be through an explicit initialize method, which can be called when an MCContext is available.
llvm-svn: 77687
|
| #
fc0264a3 |
| 31-Jul-2009 |
Chris Lattner <[email protected]> |
fix PR4650: we only track sizes for certain objects, so only put something into the mergable section if it is one of our special cases. This could obviously be improved, but this is the minimal fix
fix PR4650: we only track sizes for certain objects, so only put something into the mergable section if it is one of our special cases. This could obviously be improved, but this is the minimal fix and restores us to the previous behavior.
llvm-svn: 77679
show more ...
|
| #
e033e6da |
| 29-Jul-2009 |
Chris Lattner <[email protected]> |
mingw uses .data and .text, not _data and _text.
llvm-svn: 77435
|
| #
c5397abb |
| 29-Jul-2009 |
Chris Lattner <[email protected]> |
fix PR4584 with a trivial patch now that the pieces are in place.
llvm-svn: 77434
|
| #
5034329f |
| 29-Jul-2009 |
Chris Lattner <[email protected]> |
pass the mangler down into the various SectionForGlobal methods. No functionality change.
llvm-svn: 77432
|
| #
8f35574c |
| 29-Jul-2009 |
Chris Lattner <[email protected]> |
constant prop a utostr.
llvm-svn: 77430
|
| #
7610c57d |
| 29-Jul-2009 |
Chris Lattner <[email protected]> |
remove some completely wrong code. 1 is never < 16. It turns out that GCC appears to put strings of any length into the ELF cstring equivalent, so just rip out the code.
llvm-svn: 77429
|
| #
513a36b6 |
| 28-Jul-2009 |
Chris Lattner <[email protected]> |
Fix PR4639, a ELF-TLS regression from some of my refactoring.
llvm-svn: 77336
|