- Jul 26, 2009
-
-
Chris Lattner authored
llvm-svn: 77134
-
Chris Lattner authored
llvm-svn: 77133
-
Chris Lattner authored
simplify targets. llvm-svn: 77132
-
Chris Lattner authored
putting readonly constants in the readonly section if we have one. llvm-svn: 77131
-
Chris Lattner authored
llvm-svn: 77130
-
Chris Lattner authored
group instead of a bunch of random unrelated ideas. Provide predicates to categorize a SectionKind into a group, and use them instead of getKind() throughout the code. This also renames a ton of SectionKinds to be more consistent and evocative, and adds a huge number of comments on the enums so that I will hopefully be able to remember how this stuff works long from now. llvm-svn: 77129
-
Daniel Dunbar authored
classes, and migrate existing targets over. llvm-svn: 77126
-
Chris Lattner authored
llvm-svn: 77116
-
Daniel Dunbar authored
- This was overkill and inconsistently implemented. llvm-svn: 77114
-
Daniel Dunbar authored
- This is a simplified mechanism which just looks up a target based on the target triple, with a few additional flags. - Remove getClosestStaticTargetForModule, the moral equivalent is now: lookupTarget(Mod->getTargetTriple, true, false, ...); - This no longer does the fuzzy matching with target data (based on endianness and pointer width) that getClosestStaticTargetForModule was doing, but this was deemed unnecessary. llvm-svn: 77111
-
Chris Lattner authored
llvm-svn: 77110
-
Chris Lattner authored
for now. Make the section switching directives more consistent by not including \n and including \t for them all. llvm-svn: 77107
-
Chris Lattner authored
and make it more aggressive, we now put: const int G2 __attribute__((weak)) = 42; into the text (readonly) segment like gcc, previously we put it into the data (readwrite) segment. llvm-svn: 77104
-
Bob Wilson authored
Patch by Anton Korzh, with some modifications from me. llvm-svn: 77101
-
Daniel Dunbar authored
Also, change MDString to use a StringRef. llvm-svn: 77098
-
Chris Lattner authored
an enum. llvm-svn: 77096
-
- Jul 25, 2009
-
-
Chris Lattner authored
1. Spell SectionFlags::Writeable as "Writable". 2. Add predicates for deriving SectionFlags from SectionKinds. 3. Sink ELF-specific getSectionPrefixForUniqueGlobal impl into ELFTargetAsmInfo. 4. Fix SectionFlagsForGlobal to know that BSS/ThreadBSS has the BSS bit set (the real fix for PR4619). 5. Fix isSuitableForBSS to not put globals with explicit sections set in BSS (which was the reason #4 wasn't fixed earlier). 6. Remove my previous hack for PR4619. llvm-svn: 77085
-
Chris Lattner authored
llvm-svn: 77084
-
Chris Lattner authored
Thanks to Rafael for the great example. llvm-svn: 77083
-
Daniel Dunbar authored
- Instead of requiring targets to define a JIT quality match function, we just have them specify if they support a JIT. - Target selection for the JIT just gets the host triple and looks for the best target which matches the triple and has a JIT. llvm-svn: 77060
-
Sanjiv Gupta authored
Mark attributes of return insn correctly. It was being assumed safe to delete in isSafeToDelete (a thing checked-in 76281). llvm-svn: 77056
-
Daniel Dunbar authored
- Less boilerplate == good. llvm-svn: 77052
-
Evan Cheng authored
llvm-svn: 77041
-
Evan Cheng authored
llvm-svn: 77035
-
Evan Cheng authored
llvm-svn: 77026
-
Evan Cheng authored
Before: adr r12, #LJTI3_0_0 ldr pc, [r12, +r0, lsl #2] LJTI3_0_0: .long LBB3_24 .long LBB3_30 .long LBB3_31 .long LBB3_32 After: adr r12, #LJTI3_0_0 add pc, r12, +r0, lsl #2 LJTI3_0_0: b.w LBB3_24 b.w LBB3_30 b.w LBB3_31 b.w LBB3_32 This has several advantages. 1. This will make it easier to optimize this to a TBB / TBH instruction + (smaller) table. 2. This eliminate the need for ugly asm printer hack to force the address into thumb addresses (bit 0 is one). 3. Same codegen for pic and non-pic. 4. This eliminate the need to align the table so constantpool island pass won't have to over-estimate the size. Based on my calculation, the later is probably slightly faster as well since ldr pc with shifter address is very slow. That is, it should be a win as long as the HW implementation can do a reasonable job of branch predict the second branch. llvm-svn: 77024
-
Daniel Dunbar authored
- Some clients which used DOUT have moved to DEBUG. We are deprecating the "magic" DOUT behavior which avoided calling printing functions when the statement was disabled. In addition to being unnecessary magic, it had the downside of leaving code in -Asserts builds, and of hiding potentially unnecessary computations. llvm-svn: 77019
-
Evan Cheng authored
llvm-svn: 77018
-
Daniel Dunbar authored
llvm-svn: 77016
-
Daniel Dunbar authored
llvm-svn: 77015
-
Owen Anderson authored
Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come. llvm-svn: 77011
-
- Jul 24, 2009
-
-
Evan Cheng authored
llvm-svn: 77004
-
Chris Lattner authored
llvm-svn: 76999
-
Chris Lattner authored
previously virtual) function to being a static function in the .cpp file. llvm-svn: 76997
-
Evan Cheng authored
Disable my constant island pass optimization (to make use soimm more effectively). It caused infinite looping on lencod. llvm-svn: 76995
-
Chris Lattner authored
It's classifications now include elf-specific discriminators. Targets that don't have these features (like darwin and pecoff) simply treat data.rel like data, etc. llvm-svn: 76993
-
Evan Cheng authored
Add a workaround for Darwin assembler bug where it's not setting the thumb bit in Thumb2 jumptable entries. We now pass Olden. llvm-svn: 76991
-
Chris Lattner authored
pass it in instead of recomputing it. llvm-svn: 76990
-
Chris Lattner authored
llvm-svn: 76989
-
Evan Cheng authored
llvm-svn: 76986
-