- Feb 26, 2011
-
-
Benjamin Kramer authored
Add some DAGCombines for (adde 0, 0, glue), which are useful to optimize legalized code for large integer arithmetic. 1. Inform users of ADDEs with two 0 operands that it never sets carry 2. Fold other ADDs or ADDCs into the ADDE if possible It would be neat if we could do the same thing for SETCC+ADD eventually, but we can't do that in target independent code. llvm-svn: 126557
-
- Feb 25, 2011
-
-
Owen Anderson authored
llvm-svn: 126518
-
Cameron Zwarich authored
llvm-svn: 126488
-
Bob Wilson authored
llvm-svn: 126477
-
Evan Cheng authored
llvm-svn: 126467
-
Evan Cheng authored
D registers since the vpush list may not have gaps. Make sure the stack adjustment instruction isn't moved between them. Ditto for vpop in epilogues. Sorry, can't reduce a small test case. rdar://9043312 llvm-svn: 126457
-
- Feb 24, 2011
-
-
Chris Lattner authored
llvm-svn: 126441
-
Devang Patel authored
Patch by Nathan Jeffords! llvm-svn: 126425
-
Richard Osborne authored
llvm-svn: 126384
-
Evan Cheng authored
operands starts at index 2, not 1. rdar://9045024 PR9305 llvm-svn: 126359
-
- Feb 23, 2011
-
-
Richard Osborne authored
llvm-svn: 126322
-
Richard Osborne authored
events on the thread and wait until a resource is ready to event. The vector of the resource that is ready is returned. llvm-svn: 126320
-
Richard Osborne authored
llvm-svn: 126315
-
Richard Osborne authored
llvm-svn: 126314
-
Richard Osborne authored
llvm-svn: 126313
-
Evan Cheng authored
llvm-svn: 126298
-
Evan Cheng authored
The previous codegen for the slow path (when values are in VFP / NEON registers) was incorrect if the source is NaN. The new codegen uses NEON vbsl instruction to copy the sign bit. e.g. vmov.i32 d1, #0x80000000 vbsl d1, d2, d0 If NEON is not available, it uses integer instructions to copy the sign bit. rdar://9034702 llvm-svn: 126295
-
David Greene authored
[AVX] General VUNPCKL codegen support. llvm-svn: 126264
-
- Feb 22, 2011
-
-
Joerg Sonnenberger authored
llvm-svn: 126244
-
Evan Cheng authored
llvm-svn: 126238
-
Roman Divacky authored
llvm-svn: 126226
-
Evan Cheng authored
llvm-svn: 126192
-
-
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
-
Joerg Sonnenberger authored
From Dimitry Andric. llvm-svn: 126168
-
Rafael Espindola authored
Patch by Jai Menon. llvm-svn: 126165
-
Evan Cheng authored
Skipping over debugvalue instructions to determine whether the split spot is in a IT block. rdar://9030770 llvm-svn: 126159
-
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
-
- 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
-
Richard Osborne authored
llvm-svn: 126132
-
Duncan Sands authored
llvm-svn: 126130
-
Chris Lattner authored
but which is responsible for us doing really bad things to 256.bzip2. llvm-svn: 126126
-
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: 126101
-
Cameron Zwarich authored
on Core 2 and Nehalem, so the code we generate is better than GCC's here. llvm-svn: 126100
-
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
-
-
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
-