- Feb 22, 2011
-
-
Cameron Zwarich authored
llvm-svn: 126185
-
Eric Christopher authored
up by the dynamic linker, but it's better to use the correct instruction to begin with. Fixes rdar://9011034 llvm-svn: 126176
-
Cameron Zwarich authored
at phis. This enables us to eliminate a lot of pointless zexts during the DAGCombine phase. This fixes <rdar://problem/8760114>. llvm-svn: 126170
-
Cameron Zwarich authored
allows for the information propagated across basic blocks to be merged at phis. llvm-svn: 126169
-
Joerg Sonnenberger authored
From Dimitry Andric. llvm-svn: 126168
-
Rafael Espindola authored
Patch by Jai Menon. llvm-svn: 126165
-
Eric Christopher authored
llvm-svn: 126163
-
Evan Cheng authored
Skipping over debugvalue instructions to determine whether the split spot is in a IT block. rdar://9030770 llvm-svn: 126159
-
Evan Cheng authored
llvm-svn: 126158
-
Joerg Sonnenberger authored
llvm-svn: 126157
-
Devang Patel authored
In other words, do not keep track of argument's location. The debugger (gdb) is not prepared to see line table entries for arguments. For the debugger, "second" line table entry marks beginning of function body. This requires some coordination with debugger to get this working. - The debugger needs to be aware of prolog_end attribute attached with line table entries. - The compiler needs to accurately mark prolog_end in line table entries (at -O0 and at -O1+) llvm-svn: 126155
-
Jakob Stoklund Olesen authored
An original endpoint is an instruction that killed or defined the original live range before any live ranges were split. When splitting global live ranges, avoid creating local live ranges without any original endpoints. We may still create global live ranges without original endpoints, but such a range won't be split again, and live range splitting still terminates. llvm-svn: 126151
-
- Feb 21, 2011
-
-
Sean Callanan authored
X86 instruction decode structure was being interpreted as being in units of bits, although it is actually stored in units of bytes. llvm-svn: 126147
-
Stuart Hastings authored
llvm-svn: 126141
-
Richard Osborne authored
llvm-svn: 126132
-
Duncan Sands authored
llvm-svn: 126130
-
Duncan Sands authored
itself without going via a phi node then we could return false here in spite of making a change. Also, tweak the comment because this method can (and always could) return true without deleting the original phi node. For example, if the phi node was used by a read-only invoke instruction which is used by another phi node phi2 which is only used by and only uses the invoke, then phi2 would be deleted but not the invoke instruction and not the original phi node. llvm-svn: 126129
-
Stuart Hastings authored
Radar 9012638. llvm-svn: 126127
-
Chris Lattner authored
but which is responsible for us doing really bad things to 256.bzip2. llvm-svn: 126126
-
Chris Lattner authored
llvm-svn: 126125
-
Duncan Sands authored
should be that if the phi is used by a side-effect free instruction with no uses then the phi and the instruction now get zapped (checked by the unittest). llvm-svn: 126124
-
NAKAMURA Takumi authored
"dllimport" function must not be GlobalVariable, but Function. It is enough to check with GlobalValue. test/CodeGen/X86/dll-linkage.ll is updated to check llc -O0. llvm-svn: 126110
-
Venkatraman Govindaraju authored
llvm-svn: 126108
-
Chris Lattner authored
llvm-svn: 126103
-
Chris Lattner authored
llvm-svn: 126102
-
Chris Lattner authored
llvm-svn: 126101
-
Cameron Zwarich authored
on Core 2 and Nehalem, so the code we generate is better than GCC's here. llvm-svn: 126100
-
Joerg Sonnenberger authored
independent vectors. llvm-svn: 126099
-
Cameron Zwarich authored
of a constant had a minor typo introduced when copying it from the book, which caused it to favor negative approximations over positive approximations in many cases. Positive approximations require fewer operations beyond the multiplication. In the case of division by 3, we still generate code that is a single instruction larger than GCC's code. llvm-svn: 126097
-
- Feb 20, 2011
-
-
Rafael Espindola authored
PR9245. llvm-svn: 126091
-
Nick Lewycky authored
test for that. With this change, test/CodeGen/X86/codegen-dce.ll no longer finds any instructions to DCE, so delete the test. Also renamed J and JP to I and IP in RecursivelyDeleteDeadPHINode. llvm-svn: 126088
-
Benjamin Kramer authored
llvm-svn: 126082
-
Benjamin Kramer authored
We usually catch this kind of optimization through InstSimplify's distributive magic, but or doesn't distribute over xor in general. "A | ~(A | B) -> A | ~B" hits 24 times on gcc.c. llvm-svn: 126081
-
Nadav Rotem authored
The DAGCombiner folds the zext into complex load instructions. This patch prevents this optimization on vectors since none of the supported targets knows how to perform load+vector_zext in one instruction. llvm-svn: 126080
-
Nick Lewycky authored
by Andrew Clinton! llvm-svn: 126077
-
Nick Lewycky authored
one Value set. This is faster because we only need to use the set when there isn't already an entry in the map. No functionality change! llvm-svn: 126076
-
Eric Christopher authored
since one needs to be a register operand. Just use movss instead of forcing an operand into a register. Fixes PR9239 llvm-svn: 126072
-
Oscar Fuentes authored
of testing for its presence at cmake time. This way the build automatically regenerates the makefiles when a svn update brings in a new sublibrary. llvm-svn: 126068
-
- Feb 19, 2011
-
-
Eli Friedman authored
the instruction passed in. Make sure to account for this correctly, instead of looping infinitely. llvm-svn: 126058
-
Eli Friedman authored
llvm-svn: 126054
-