- Feb 22, 2011
-
-
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
-
- Feb 21, 2011
-
-
Richard Osborne authored
llvm-svn: 126132
-
Stuart Hastings authored
llvm-svn: 126131
-
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
-
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
-
-
Oscar Fuentes authored
Requires CMake 2.8.3 or newer. llvm-svn: 126092
-
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
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
-
- Feb 19, 2011
-
-
Eli Friedman authored
the instruction passed in. Make sure to account for this correctly, instead of looping infinitely. llvm-svn: 126058
-
Chris Lattner authored
This is reasonable to do since all bt-mem forms do the same thing. llvm-svn: 126047
-
Chris Lattner authored
constant, including globals. This makes us generate much more "pretty" pattern globals as well because it doesn't break it down to an array of bytes all the time. This enables us to handle stores of relocatable globals. This kicks in about 48 times in 254.gap, giving us stuff like this: @.memset_pattern40 = internal constant [2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*] [%struct.TypHeader* (%struct.TypHeader*, %struct .TypHeader*)* @IsFalse, %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)* @IsFalse], align 16 ... call void @memset_pattern16(i8* %scevgep5859, i8* bitcast ([2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*]* @.memset_pattern40 to i8* ), i64 %tmp75) nounwind llvm-svn: 126044
-
Chris Lattner authored
them as splat values. llvm-svn: 126041
-
rdar://9009151Chris Lattner authored
unsplatable values into memset_pattern16 when it is available (recent darwins). This transforms lots of strided loop stores of ints for example, like 5 in vpr: Formed memset: call void @memset_pattern16(i8* %4, i8* getelementptr inbounds ([16 x i8]* @.memset_pattern9, i32 0, i32 0), i64 %tmp25) from store to: {%3,+,4}<%11> at: store i32 3, i32* %scevgep, align 4, !tbaa !4 llvm-svn: 126040
-
Devang Patel authored
llvm-svn: 126008
-
- Feb 18, 2011
-
-
Devang Patel authored
Do not lose debug info of an inlined function argument even if the argument is only used through GEPs. This time with a fix that avoids using invalidated DenseMap iterator. llvm-svn: 125984
-
Bill Wendling authored
llvm-svn: 125960
-
Bruno Cardoso Lopes authored
testcases for the disassembler to make sure it still works for "msr". llvm-svn: 125948
-
Duncan Sands authored
overflow. These subsume some existing equality transforms, so zap those. llvm-svn: 125843
-
Chris Lattner authored
llvm-svn: 125831
-
Cameron Zwarich authored
llvm-svn: 125830
-
Chris Lattner authored
taken (and used!). This prevents merging the blocks (invalidating the block addresses) in a case like this: #define _THIS_IP_ ({ __label__ __here; __here: (unsigned long)&&__here; }) void foo() { printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); } which fixes PR4151. llvm-svn: 125829
-
Joerg Sonnenberger authored
llvm-svn: 125805
-
Joerg Sonnenberger authored
Validate encoding of leave in 64bit mode. llvm-svn: 125795
-
Devang Patel authored
Do not lose debug info of an inlined function argument even if the argument is only used through GEPs. llvm-svn: 125794
-
Chris Lattner authored
common operations through a phi. llvm-svn: 125790
-
- Feb 17, 2011
-
-
Chris Lattner authored
result inbounds if all of the inputs are inbounds. llvm-svn: 125785
-
Nadav Rotem authored
Add getAllOnesValue of FP numbers to Constants and APFloat. Add more tests. llvm-svn: 125776
-
NAKAMURA Takumi authored
No one uses *-mingw64. mingw-w64 is represented as {i686|x86_64}-w64-mingw32. In llvm side, i686 and x64 can be treated as similar way. llvm-svn: 125747
-
Duncan Sands authored
variations (some of these were already present so I unified the code). Spotted by my auto-simplifier as occurring a lot. llvm-svn: 125734
-
Chris Lattner authored
llvm-svn: 125711
-
Chris Lattner authored
llvm-svn: 125710
-
Chris Lattner authored
it swaps the LHS/RHS of a single binop. llvm-svn: 125700
-
- Feb 16, 2011
-
-
Rafael Espindola authored
the right thing and stop trying to copy it. Fixes PR8944. llvm-svn: 125648
-
Eric Christopher authored
transformation if we can't legally create a build vector of the correct type. Check that we can make the transformation first, and add a TODO to refactor this code with similar cases. Fixes: PR9223 and rdar://9000350 llvm-svn: 125631
-
Eric Christopher authored
llvm-svn: 125630
-