- Aug 08, 2009
-
-
Chris Lattner authored
now that they create *all* the sections. llvm-svn: 78494
-
- Aug 06, 2009
-
-
Chris Lattner authored
creation activity into the target-specific subclasses of TLOF. Before this, globals with explicit sections could be created by the base class. 1. make getOrCreateSection protected, add a new getExplicitSectionGlobal pure virtual method to assign sections to globals with a specified section. 2. eliminate getSpecialCasedSectionGlobals, which is now PIC specific. 3. eliminate the getKindForNamedSection virtual method, which is now just a static method for ELF. 4. Add implementions of getExplicitSectionGlobal for ELF/PECOFF/Darwin/PIC16. They are now all detangled and understandable, woo! :) llvm-svn: 78319
-
- Aug 05, 2009
-
-
Chris Lattner authored
getKindForGlobal. llvm-svn: 78156
-
- Aug 04, 2009
-
-
Chris Lattner authored
__TEXT,__ustring section on darwin. llvm-svn: 78068
-
Chris Lattner authored
it is just being used as a prefix, so forward substitute it directly. llvm-svn: 78067
-
Chris Lattner authored
section on ELF targets. llvm-svn: 78066
-
Chris Lattner authored
add new concrete versions for 1/2/4-byte mergable strings. These are not actually created yet. llvm-svn: 78055
-
- Aug 03, 2009
-
-
Chris Lattner authored
more step towards "semantics sections" llvm-svn: 78002
-
- Aug 02, 2009
-
-
Chris Lattner authored
TLOF, unifying all the dwarf targets at the same time. llvm-svn: 77889
-
Chris Lattner authored
llvm-svn: 77888
-
Chris Lattner authored
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
-
Chris Lattner authored
TAI. llvm-svn: 77842
-
Chris Lattner authored
llvm-svn: 77834
-
Chris Lattner authored
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
-
- Aug 01, 2009
-
-
Chris Lattner authored
the appropriate subclasses. llvm-svn: 77815
-
Chris Lattner authored
llvm-svn: 77814
-
Chris Lattner authored
llvm-svn: 77813
-
Chris Lattner authored
llvm-svn: 77812
-
Chris Lattner authored
llvm-svn: 77810
-
Chris Lattner authored
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
-
Chris Lattner authored
llvm-svn: 77787
-
- Jul 31, 2009
-
-
Chris Lattner authored
indicate that it is a predicate, not an emitter. This eliminates TAI dependencies on Mangler and GlobalValue. llvm-svn: 77726
-
Chris Lattner authored
MCSection subclasses yet, but this is a step in the right direction. llvm-svn: 77708
-
Chris Lattner authored
initialize method, which can be called when an MCContext is available. llvm-svn: 77687
-
Chris Lattner authored
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
-
- Jul 29, 2009
-
-
Chris Lattner authored
llvm-svn: 77435
-
Chris Lattner authored
llvm-svn: 77434
-
Chris Lattner authored
No functionality change. llvm-svn: 77432
-
Chris Lattner authored
llvm-svn: 77430
-
Chris Lattner authored
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
-
- Jul 28, 2009
-
-
Chris Lattner authored
llvm-svn: 77336
-
Chris Lattner authored
mode, and "ld64" (the default linker) falls back to it in -static mode. llvm-svn: 77334
-
Chris Lattner authored
llvm-svn: 77326
-
Chris Lattner authored
it is highly specific to the object file that will be generated in the end, this introduces a new TargetLoweringObjectFile interface that is implemented for each of ELF/MachO/COFF/Alpha/PIC16 and XCore. Though still is still a brutal and ugly refactoring, this is a major step towards goodness. This patch also: 1. fixes a bunch of dangling pointer problems in the PIC16 backend. 2. disables the TargetLowering copy ctor which PIC16 was accidentally using. 3. gets us closer to xcore having its own crazy target section flags and pic16 not having to shadow sections with its own objects. 4. fixes wierdness where ELF targets would set CStringSection but not CStringSection_. Factor the code better. 5. fixes some bugs in string lowering on ELF targets. llvm-svn: 77294
-