- Jul 25, 2009
-
-
Anders Carlsson authored
More work on the constant struct builder. We can now convert the struct to a packed struct when necessary. llvm-svn: 77038
-
Evan Cheng authored
llvm-svn: 77035
-
Dan Gohman authored
analyzing add recurrences. llvm-svn: 77034
-
Dan Gohman authored
llvm-svn: 77033
-
Dan Gohman authored
affected after a PHI node has been analyzed, just remove affected SCEVs from the Scalars map, so that they'll be (lazily) recreated as needed. This avoids creating SCEV objects that aren't actually needed. Also, rewrite the associated def-use walking code to be non-recursive and to continue traversing past Instructions that don't have an entry in the Scalars map. llvm-svn: 77032
-
Evan Cheng authored
llvm-svn: 77031
-
Fariborz Jahanian authored
llvm-svn: 77030
-
Dan Gohman authored
getAnalysisIfAvailable<TargetData>(). llvm-svn: 77028
-
Daniel Dunbar authored
llvm-svn: 77027
-
Evan Cheng authored
llvm-svn: 77026
-
Jeffrey Yasskin authored
test for it. The test is by no means complete, but it tests the problem I was fixing. llvm-svn: 77025
-
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
-
Sean Callanan authored
Necessary for cases in which the memory is in another process, in a file, or on a remote machine. The primary use for this is the llvm-mc disassemblers, so that they can be targeted at arbitrary objects, not just in-process memory. llvm-svn: 77023
-
Anders Carlsson authored
llvm-svn: 77022
-
Anders Carlsson authored
More work on the constant struct builder. We now try to layout all constant structs but throw away the result. llvm-svn: 77021
-
Evan Cheng authored
llvm-svn: 77020
-
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: 77017
-
Daniel Dunbar authored
llvm-svn: 77016
-
Daniel Dunbar authored
llvm-svn: 77015
-
Andreas Bolka authored
llvm-svn: 77014
-
Owen Anderson authored
llvm-svn: 77012
-
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
-
Daniel Dunbar authored
- Chris, please approve. llvm-svn: 77010
-
Dan Gohman authored
llvm-svn: 77009
-
Evan Cheng authored
llvm-svn: 77007
-
Evan Cheng authored
llvm-svn: 77006
-
- Jul 24, 2009
-
-
Eli Friedman authored
There's still a strict-aliasing violation here, but I don't feel like dealing with that right now... llvm-svn: 77005
-
Evan Cheng authored
llvm-svn: 77004
-
Douglas Gregor authored
Note that this also fixes a bug that affects non-template code, where we were not treating out-of-line static data members are "file-scope" variables, and therefore not checking their initializers. llvm-svn: 77002
-
Fariborz Jahanian authored
llvm-svn: 77001
-
Fariborz Jahanian authored
with type conversion to fix ir-gen crash. llvm-svn: 77000
-
Chris Lattner authored
llvm-svn: 76999
-
Ted Kremenek authored
if the DeclRefExpr is a float, not just either argument. llvm-svn: 76998
-
Chris Lattner authored
previously virtual) function to being a static function in the .cpp file. llvm-svn: 76997
-
Ted Kremenek authored
llvm-svn: 76996
-
Evan Cheng authored
Disable my constant island pass optimization (to make use soimm more effectively). It caused infinite looping on lencod. llvm-svn: 76995
-
Eric Christopher authored
format and add an extract/insert test. llvm-svn: 76994
-
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
-