- Oct 24, 2008
-
-
Evan Cheng authored
llvm-svn: 58102
-
Duncan Sands authored
LHS is a foldable load, then LHS and RHS are swapped and SetCCOpcode is changed to SETUGT. But the later code is expecting operands to be the wrong way round for SETUGT, but they are not in this case, resulting in an inverted compare. The solution is to move the load normalization before the correction for SETUGT. This bug was tickled by LegalizeTypes which happened to legalize the testcase slightly differently to LegalizeDAG. llvm-svn: 58092
-
Cedric Venet authored
Modify the cmake build system so that if it doesn't find bison, it will use the pregenerated file in from the svn (.cvs). Work only for windows for the moment. Tested on Vista64 with MSVC2008express. llvm-svn: 58090
-
Nick Lewycky authored
llvm-svn: 58075
-
Evan Cheng authored
llvm-svn: 58072
-
Nick Lewycky authored
Understand that mul %x, 1 = %x. llvm-svn: 58069
-
Evan Cheng authored
llvm-svn: 58068
-
Dan Gohman authored
fixes a bunch of test-suite JIT failures on x86-64 in -relocation-model=static mode. llvm-svn: 58066
-
Dale Johannesen authored
llvm-svn: 58057
-
Ted Kremenek authored
llvm-svn: 58052
-
- Oct 23, 2008
-
-
Evan Cheng authored
Committing a good chunk of the pre-register allocation live interval splitting pass. It's handling simple cases and appear to do good things. Next: avoid splitting an interval multiple times; renumber registers when possible; record stack slot live intervals for coloring; rematerialize defs when possible. llvm-svn: 58044
-
Dale Johannesen authored
Prevents DeadMachineInstructionElim from thinking things like MTCTR are dead (fixes massive testsuite breakage at -O0). llvm-svn: 58043
-
Daniel Dunbar authored
std::ostream API. llvm-svn: 58042
-
Duncan Sands authored
with the result number. llvm-svn: 58041
-
Daniel Dunbar authored
LoopPass*. - Although less precise, this means they can be used in clients without RTTI (who would otherwise need to include LoopPass.h, which eventually includes things using dynamic_cast). This was the simplest solution that presented itself, but I am happy to use a better one if available. llvm-svn: 58010
-
Jim Grosbach authored
llvm-svn: 58006
-
- Oct 22, 2008
-
-
Daniel Dunbar authored
- The old versions are still hanging around, but should be migrated away from. llvm-svn: 57989
-
Dale Johannesen authored
llvm-svn: 57987
-
Julien Lerouge authored
llvm-svn: 57984
-
Duncan Sands authored
llvm-svn: 57973
-
Duncan Sands authored
assume that i64 has been turned into a BUILD_PAIR node (when called from LegalizeTypes this hasn't happened yet) and don't use a vector shuffle mask with an illegal element type. llvm-svn: 57972
-
Duncan Sands authored
may return i8, which can result in SELECT nodes for which the type of the condition is i8, but there are no patterns for select with i8 condition. Tweak the LegalizeTypes logic to avoid this as much as possible. This isn't a real fix because it is still perfectly possible to end up with such select nodes - CellSPU needs to be fixed IMHO. llvm-svn: 57968
-
Duncan Sands authored
ADDC/ADDE/SUBC/SUBE if the target supports it. llvm-svn: 57967
-
Duncan Sands authored
that is not of type MVT::i1 in SELECT and SETCC nodes. Relax the LegalizeTypes SELECT condition promotion sanity checks to allow other condition types than i1. llvm-svn: 57966
-
Duncan Sands authored
to have a different type to the vector element type. This should be fairly harmless because in the past guys like this were being built all over the place (and were cleaned up when I added this check). The reason for relaxing this check is that it helps LegalizeTypes legalize vector shuffles: the mask is a BUILD_VECTOR that it is *not always possible* to legalize while keeping it a BUILD_VECTOR (vector_shuffle requires the mask to be a BUILD_VECTOR, as opposed to a vector with the right vector type). With this check it is even harder to legalize the mask - turning the check off means that LegalizeTypes manages to legalize almost all vector shuffles encountered in practice. The correct solution is to change vector_shuffle to be a variadic node with the mask built into it as operands. While waiting for that change, this hack stops the problem with vector_shuffle from blocking the turning on of LegalizeTypes. llvm-svn: 57965
-
Chris Lattner authored
are their operands. llvm-svn: 57956
-
Daniel Dunbar authored
llvm-svn: 57946
-
Oscar Fuentes authored
names of LLVMCore and ARMCodeGen. llvm-svn: 57943
-
Dale Johannesen authored
llvm-svn: 57940
-
Oscar Fuentes authored
llvm-svn: 57937
-
Daniel Dunbar authored
createPrintModulePass and createPrintFunctionPass. - So clients who compile w/o RTTI can use them. llvm-svn: 57933
-
Dale Johannesen authored
well, sort of. (Algorithm by Ian Ollmann.) llvm-svn: 57932
-
- Oct 21, 2008
-
-
Dale Johannesen authored
The same one Apple gcc uses, faster. Also gets the extreme case in gcc.c-torture/execute/ieee/rbug.c correct which we weren't before; this is not sufficient to get the test to pass though, there is another bug. llvm-svn: 57926
-
Dan Gohman authored
handle first-class aggregate values. Also, fix a bug in the Ret handling for empty aggregates. llvm-svn: 57925
-
Daniel Dunbar authored
documentation. Add C++ header marker. llvm-svn: 57923
-
Dan Gohman authored
llvm-svn: 57915
-
Jim Grosbach authored
llvm-svn: 57911
-
Nuno Lopes authored
fix a tricky bug in the JIT global variable emitter, that was triggered when JITing a variable independently of a function. This lead to sharing memory memory between functions and GVs thus changing the value of a GV could change the code in execution. more details on the ML. llvm-svn: 57900
-
Dan Gohman authored
isn't yet prepared for it. llvm-svn: 57886
-
Dan Gohman authored
in the 32-bit signed offset field of addresses. Even though this may be intended, some linkers refuse to relocate code where the relocated address computation overflows. Also, fix the sign-extension of constant offsets to use the actual pointer size, rather than the size of the GlobalAddress node, which may be different, for example on x86-64 where MVT::i32 is used when the address is being fit into the 32-bit displacement field. llvm-svn: 57885
-