- Feb 27, 2008
-
-
Chris Lattner authored
llvm-svn: 47662
-
Chris Lattner authored
stack slot and store if the SINT_TO_FP is actually legal. This allows us to compile: double a(double b) {return (unsigned)b;} to: _a: cvttsd2siq %xmm0, %rax movl %eax, %eax cvtsi2sdq %rax, %xmm0 ret instead of: _a: subq $8, %rsp cvttsd2siq %xmm0, %rax movl %eax, %eax cvtsi2sdq %rax, %xmm0 addq $8, %rsp ret crazy. llvm-svn: 47660
-
Chris Lattner authored
llvm-svn: 47659
-
Chris Lattner authored
_test: movl %edi, %eax ret instead of: _test: movl $4294967295, %ecx movq %rdi, %rax andq %rcx, %rax ret It would be great to write this as a Pat pattern that used subregs instead of a 'pseudo' instruction, but I don't know how to do that in td files. llvm-svn: 47658
-
Evan Cheng authored
llvm-svn: 47657
-
Dan Gohman authored
llvm-svn: 47656
-
Dan Gohman authored
ComputeMaskedBits to use the APInt form, and remove the non-APInt form. llvm-svn: 47654
-
Devang Patel authored
llvm-svn: 47653
-
Chris Lattner authored
llvm-svn: 47652
-
Dan Gohman authored
Change several cases in SimplifyDemandedMask that don't ever do any simplifying to reuse the logic in ComputeMaskedBits instead of duplicating it. llvm-svn: 47648
-
Bill Wendling authored
llvm-svn: 47644
-
Devang Patel authored
llvm-svn: 47642
-
Devang Patel authored
llvm-svn: 47641
-
Owen Anderson authored
llvm-svn: 47640
-
Owen Anderson authored
in an invalid transformation. llvm-svn: 47639
-
- Feb 26, 2008
-
-
Devang Patel authored
llvm-svn: 47637
-
Arnold Schwaighofer authored
llvm-svn: 47635
-
Devang Patel authored
llvm-svn: 47634
-
Devang Patel authored
llvm-svn: 47633
-
Chris Lattner authored
instead of init'ing it maximally to zeros on entry. getFreePhysReg is pretty hot and only a few elements are typically used. This speeds up linscan by 5% on 176.gcc. llvm-svn: 47631
-
Bill Wendling authored
llvm-svn: 47629
-
Anton Korobeynikov authored
llvm-svn: 47628
-
Bill Wendling authored
would have been a Godsend here! llvm-svn: 47625
-
Evan Cheng authored
llvm-svn: 47623
-
Nick Kledzik authored
first commit of new LTO system. It is not hooked up in the llvm/tools/Makefile, so no one will build it be default yet llvm-svn: 47621
-
Devang Patel authored
llvm-svn: 47619
-
Devang Patel authored
llvm-svn: 47616
-
-
Devang Patel authored
Remove unnecessary getOperand/setOperand overriders. Simplify getReturnValue() llvm-svn: 47614
-
Dan Gohman authored
llvm-svn: 47612
-
Devang Patel authored
Unify to ReturnInst::init() member functions. llvm-svn: 47611
-
Eli Friedman authored
try to simplify them. llvm-svn: 47610
-
Chris Lattner authored
llvm-svn: 47608
-
Devang Patel authored
llvm-svn: 47607
-
Arnold Schwaighofer authored
llvm-svn: 47606
-
Chris Lattner authored
also fixes cfrac, flops, and 175.vpr llvm-svn: 47605
-
Gabor Greif authored
Really feed llvm-as with the testcase, do not let it read from stdin. This fixes the hangs seen on solaris10. llvm-svn: 47604
-
Gabor Greif authored
by supplying a dummy "verbose" procedure llvm-svn: 47603
-
Gabor Greif authored
(on solaris10, which are: CodeGen/PowerPC/frounds.ll Transforms/InstCombine/2008-02-23-MulSub.ll) I needed a tool to figure out which one is the guilty. To this end I have added a verbosity option to the test/Makefile. It can be invoked thus: gmake check TESTSUITE=CodeGen/PowerPC VERBOSE="-v -v" (The number of "-v"s specifies the verbosity level. Instead of "-v" other aliases can be specified, please consult the dejagnu docs for info.) At level >= 2 following line is logged for each test, before running it: ABOUT TO RUN: <test>.ll llvm-svn: 47602
-
Duncan Sands authored
CodeGen/PowerPC/illegal-element-type.ll): suppose a node X is processed, and processing maps it to a node Y. Then X continues to exist in the DAG, but with no users. While processing some other node, a new node may be created that happens to be equal to X, and thus X will be reused rather than a truly new node. This can cause X to "magically reappear", and since it is in the Processed state in will not be reprocessed, so at the end of type legalization the illegal node X can still be present. The solution is to replace X with Y whenever X gets resurrected like this. llvm-svn: 47601
-