- Oct 28, 2009
-
-
Dale Johannesen authored
to spill after all, we weren't handling 2-instruction spill sequences correctly (PPC Altivec). We need to remove the store in this case. Removing the other instruction(s) would be goodness but is not needed for correctness, and isn't done here. 7331562. llvm-svn: 85437
-
Eric Christopher authored
llvm-svn: 85436
-
Bob Wilson authored
I'm going to redo this using the OptimizeForSize function attribute. llvm-svn: 85426
-
Victor Hernandez authored
ArraySize * ElementSize ElementSize * ArraySize ArraySize << log2(ElementSize) ElementSize << log2(ArraySize) Refactor isArrayMallocHelper and delete isSafeToGetMallocArraySize, so that there is only 1 copy of the malloc array determining logic. Update users of getMallocArraySize() to not bother calling isArrayMalloc() as well. llvm-svn: 85421
-
David Goodwin authored
llvm-svn: 85412
-
Bob Wilson authored
opcode and operand with a tab. Check for these instructions in the usual places. llvm-svn: 85411
-
Evan Cheng authored
llvm-svn: 85410
-
Jim Grosbach authored
llvm-svn: 85406
-
Devang Patel authored
llvm-svn: 85402
-
Chris Lattner authored
stuff) to programmatically control the current debug flavor. While I'm at it, doxygenate Debug.h and clean it up. llvm-svn: 85395
-
Dan Gohman authored
chains have no users, they can't be predecessors of the condition. llvm-svn: 85394
-
Dan Gohman authored
the new instructions and leave the old one in place. llvm-svn: 85393
-
Edward O'Callaghan authored
llvm-svn: 85390
-
Benjamin Kramer authored
llvm-svn: 85389
-
Owen Anderson authored
purposes for GVN/DSE. llvm-svn: 85383
-
Nick Lewycky authored
Checks on Demand algorithm which looks at arbitrary branches instead of loop iterations. This is GSoC work by Andre Tavares with only editorial changes applied! llvm-svn: 85382
-
Evan Cheng authored
llvm-svn: 85381
-
Owen Anderson authored
to depend on Ref and ModRef calls within the invariant region. llvm-svn: 85380
-
Evan Cheng authored
llvm-svn: 85379
-
Owen Anderson authored
purely local for now. llvm-svn: 85378
-
Chris Lattner authored
round trip blockaddress through .ll and .bc files, so add a testcase. There are still a bunch of places in the optimizer and other places that need to be updated to work with these constructs, but at least the basics are in now. llvm-svn: 85377
-
Chris Lattner authored
llvm-svn: 85376
-
Chris Lattner authored
In the new world order, BlockAddress can have a BasicBlock operand. This doesn't permute much, because if you have a ConstantExpr (or anything more specific than Constant) we still know the operand has to be a Constant. llvm-svn: 85375
-
Chris Lattner authored
readonly section if a reference to the containing function is valid in the readonly section. llvm-svn: 85370
-
Dan Gohman authored
recursive to avoid consuming extraordinary amounts of stack space when processing tall graphs. llvm-svn: 85369
-
Chris Lattner authored
$ llvm-as foo.ll -d -disable-output which reads and prints the .ll file. BC encoding is the next project. Testcase will go in once that works. llvm-svn: 85368
-
Chris Lattner authored
llvm-svn: 85367
-
Chris Lattner authored
zap BlockAddress values. llvm-svn: 85366
-
Dan Gohman authored
otherwise unhoistable instructions in order to allow the loads to be hoisted. llvm-svn: 85364
-
Evan Cheng authored
llvm-svn: 85362
-
Evan Cheng authored
llvm-svn: 85361
-
Dan Gohman authored
MachineLICM and other things which run before LiveVariables is run. llvm-svn: 85360
-
Dan Gohman authored
if they have compatible encodings. llvm-svn: 85359
-
Evan Cheng authored
llvm-svn: 85358
-
Dan Gohman authored
eliminating a use of MVT::Flag, this is needed for an upcoming CodeGen change. This unfortunately requires SystemZ to switch to the list-burr scheduler, in order to handle the physreg defs properly, however that's what LLVM has available at this time. llvm-svn: 85357
-
Bob Wilson authored
llvm-svn: 85355
-
Chris Lattner authored
llvm-svn: 85351
-
Chris Lattner authored
untested and there is no way to use it, next up: doing battle with asmparser. llvm-svn: 85349
-
Bob Wilson authored
use it to control tail merging when there is a tradeoff between performance and code size. When there is only 1 instruction in the common tail, we have been merging. That can be good for code size but is a definite loss for performance. Now we will avoid tail merging in that case when the optimization level is "Aggressive", i.e., "-O3". Radar 7338114. Since the IfConversion pass invokes BranchFolding, it too needs to know the optimization level. Note that I removed the RegisterPass instantiation for IfConversion because it required a default constructor. If someone wants to keep that for some reason, we can add a default constructor with a hard-wired optimization level. llvm-svn: 85346
-
Jeffrey Yasskin authored
colliding with llvm/ADT/ValueMap.h:ValueMap<>. llvm-svn: 85344
-