Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Use IRBuilder. | Devang Patel | 2011-05-19 | 1 | -2/+2 | |
| | | | | llvm-svn: 131609 | |||||
* | Use IRBuilder while simplifying unreachable. | Devang Patel | 2011-05-19 | 1 | -7/+8 | |
| | | | | llvm-svn: 131607 | |||||
* | Revert my previous patch. The cmake build had already been fixed. | Rafael Espindola | 2011-05-19 | 1 | -1/+0 | |
| | | | | llvm-svn: 131606 | |||||
* | Use IRBuilder while simplifying conditional branch. | Devang Patel | 2011-05-18 | 1 | -31/+36 | |
| | | | | llvm-svn: 131605 | |||||
* | More instcombine cleanup, towards improving debug line info. | Eli Friedman | 2011-05-18 | 3 | -10/+12 | |
| | | | | llvm-svn: 131604 | |||||
* | Restore sanity to 131601. | Jim Grosbach | 2011-05-18 | 1 | -2/+3 | |
| | | | | llvm-svn: 131603 | |||||
* | Fix the cmake build. | Rafael Espindola | 2011-05-18 | 1 | -0/+1 | |
| | | | | llvm-svn: 131602 | |||||
* | Objective C functions may use a magic '\1' on the name. Handle that when | Jim Grosbach | 2011-05-18 | 2 | -1/+16 | |
| | | | | | | dealing with them in the MCJIT. llvm-svn: 131601 | |||||
* | Shuffle StandardPasses.cpp into VMCore; add it to CMake. | Eli Friedman | 2011-05-18 | 2 | -0/+1 | |
| | | | | llvm-svn: 131600 | |||||
* | Use IRBuilder while simplifying branch. | Devang Patel | 2011-05-18 | 1 | -12/+13 | |
| | | | | llvm-svn: 131598 | |||||
* | Revert unintentional commit. | Eli Friedman | 2011-05-18 | 1 | -26/+5 | |
| | | | | llvm-svn: 131597 | |||||
* | More instcombine simplifications towards better debug locations. | Eli Friedman | 2011-05-18 | 3 | -18/+36 | |
| | | | | llvm-svn: 131596 | |||||
* | Add missing mayLoad / mayStore flags to instruction definitions without ↵ | Cameron Zwarich | 2011-05-18 | 1 | -0/+5 | |
| | | | | | | | | patterns, which fixes all of the CodeGen/MBlaze verifier failures. llvm-svn: 131595 | |||||
* | Reserve the segment registers on x86 to fix verifier failures in any code that | Cameron Zwarich | 2011-05-18 | 1 | -0/+9 | |
| | | | | | | uses them. llvm-svn: 131591 | |||||
* | Remove comments as Chris requested. | Charles Davis | 2011-05-18 | 1 | -48/+12 | |
| | | | | llvm-svn: 131590 | |||||
* | Reserve r29 on Alpha. This fixes all verifier failures in CodeGen/Alpha. | Cameron Zwarich | 2011-05-18 | 1 | -0/+1 | |
| | | | | llvm-svn: 131587 | |||||
* | Handle perfect shuffle case that generates a vrev for vectors of floats. | Tanya Lattner | 2011-05-18 | 1 | -1/+2 | |
| | | | | | | Add test case. llvm-svn: 131582 | |||||
* | Third pass at allowing plugins to modify default passes. This time with a ↵ | Eli Friedman | 2011-05-18 | 1 | -0/+247 | |
| | | | | | | tweak so that we don't depend on an uninitialized argument. llvm-svn: 131581 | |||||
* | Use IRBuilder while simplifying return instruction. | Devang Patel | 2011-05-18 | 1 | -11/+13 | |
| | | | | llvm-svn: 131580 | |||||
* | Fix an obvious typo in r131572. | Cameron Zwarich | 2011-05-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 131579 | |||||
* | Fix more of PR8825. Now all of CodeGen/ARM passes with VerifyCoalescing ↵ | Cameron Zwarich | 2011-05-18 | 1 | -4/+7 | |
| | | | | | | turned on. llvm-svn: 131578 | |||||
* | When forming an ICmpZero LSRUse, normalize the non-IV operand | Dan Gohman | 2011-05-18 | 1 | -0/+4 | |
| | | | | | | | of the comparison, so that the resulting expression is fully normalized. This fixes PR9939. llvm-svn: 131576 | |||||
* | Add some more Win64 EH directives: | Charles Davis | 2011-05-18 | 2 | -0/+60 | |
| | | | | | | | | | | | | | - StartChained and EndChained delimit a chained unwind area, which can contain additional operations to be undone if an exception occurs inside of it. - UnwindOnly declares that this function doesn't handle any exceptions. If it has a handler, it's an unwind handler instead of an exception handler. - Lsda declares the location and size of the LSDA, which in the Win64 EH scheme is kept inside the UNWIND_INFO struct. Windows itself ignores the LSDA; it's used by the Language-Specific Handler (the "Personality Function" from DWARF). llvm-svn: 131572 | |||||
* | Spread use of IRBuilder even more. | Devang Patel | 2011-05-18 | 1 | -10/+12 | |
| | | | | llvm-svn: 131571 | |||||
* | Revert r131556; it's breaking buildbots/clang tests. | Eli Friedman | 2011-05-18 | 1 | -247/+0 | |
| | | | | llvm-svn: 131567 | |||||
* | Use IRBuilder while simplifying switch instruction. | Devang Patel | 2011-05-18 | 1 | -15/+18 | |
| | | | | llvm-svn: 131566 | |||||
* | Disassembly of tBcc was wrongly adding 4 to the SignExtend'ed imm8:'0' ↵ | Johnny Chen | 2011-05-18 | 1 | -1/+1 | |
| | | | | | | immediate operand. llvm-svn: 131565 | |||||
* | Use IRBuilder while simplifying unwind. | Devang Patel | 2011-05-18 | 1 | -7/+9 | |
| | | | | llvm-svn: 131561 | |||||
* | Enables vararg functions that pass all arguments via registers to be ↵ | Chad Rosier | 2011-05-18 | 1 | -5/+18 | |
| | | | | | | optimized into tail-calls when possible. llvm-svn: 131560 | |||||
* | More instcombine cleanup aimed towards improving debug line info. | Eli Friedman | 2011-05-18 | 1 | -21/+18 | |
| | | | | llvm-svn: 131559 | |||||
* | Second pass at allowing plugins to modify default passes. This time without ↵ | David Chisnall | 2011-05-18 | 1 | -0/+247 | |
| | | | | | | bonus inter-library dependencies. llvm-svn: 131556 | |||||
* | Revise r131553. Just use the type of the input node and forgo the bitcast. ↵ | Evan Cheng | 2011-05-18 | 1 | -4/+3 | |
| | | | | | | rdar://9449159. llvm-svn: 131555 | |||||
* | Fix an ARMTargetLowering::LowerSELECT bug: legalized result must have same ↵ | Evan Cheng | 2011-05-18 | 1 | -1/+3 | |
| | | | | | | type as input. Sorry test cases only trigger when dag combine is disabled. rdar://9449178 llvm-svn: 131553 | |||||
* | Use IRBuilder while simplifying terminator. | Devang Patel | 2011-05-18 | 1 | -4/+7 | |
| | | | | llvm-svn: 131552 | |||||
* | Use IRBuilder while simplifying unconditional branch. | Devang Patel | 2011-05-18 | 1 | -6/+11 | |
| | | | | llvm-svn: 131551 | |||||
* | Use IRBuilder while folding two entry PHINode. | Devang Patel | 2011-05-18 | 1 | -6/+8 | |
| | | | | llvm-svn: 131548 | |||||
* | Switch more inst insertion in instcombine to IRBuilder. | Eli Friedman | 2011-05-18 | 1 | -10/+6 | |
| | | | | llvm-svn: 131547 | |||||
* | Set up IRBuilder for use during simplification. | Devang Patel | 2011-05-18 | 1 | -0/+3 | |
| | | | | llvm-svn: 131545 | |||||
* | Switch more inst insertion in instcombine to IRBuilder. | Eli Friedman | 2011-05-18 | 1 | -13/+6 | |
| | | | | llvm-svn: 131544 | |||||
* | fix typo | Matt Beaumont-Gay | 2011-05-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 131543 | |||||
* | Switch inst insertion in instcombine transform to IRBuilder. | Eli Friedman | 2011-05-18 | 1 | -6/+2 | |
| | | | | llvm-svn: 131542 | |||||
* | Use IRBuiler while constant folding terminator. | Devang Patel | 2011-05-18 | 2 | -9/+12 | |
| | | | | llvm-svn: 131541 | |||||
* | Fix inelegant initialization. | Stuart Hastings | 2011-05-18 | 1 | -2/+1 | |
| | | | | llvm-svn: 131538 | |||||
* | PTX: add flag to disable mad/fma selection | Justin Holewinski | 2011-05-18 | 4 | -4/+19 | |
| | | | | | | Patch by Dan Bailey llvm-svn: 131537 | |||||
* | Revert commit 131534 since it seems to have broken several buildbots. | Duncan Sands | 2011-05-18 | 4 | -6/+6 | |
| | | | | | | | | Original log entry: Refactor getActionType and getTypeToTransformTo ; place all of the 'decision' code in one place. llvm-svn: 131536 | |||||
* | Refactor getActionType and getTypeToTransformTo ; place all of the 'decision' | Nadav Rotem | 2011-05-18 | 4 | -6/+6 | |
| | | | | | | code in one place. llvm-svn: 131534 | |||||
* | Now that SrcBits and DestBits always represent the primitive size, rather | Duncan Sands | 2011-05-18 | 1 | -55/+29 | |
| | | | | | | | | | than either the primitive size or the element primitive size (in the case of vectors), simplify the vector logic. No functionality change. There is some distracting churn in the patch because I lined up comments better while there - sorry about that. llvm-svn: 131533 | |||||
* | Tighten up checking of the validity of casts. (1) The IR parser would | Duncan Sands | 2011-05-18 | 1 | -32/+28 | |
| | | | | | | | | | | | | | | happily accept things like "sext <2 x i32> to <999 x i64>". It would also accept "sext <2 x i32> to i64", though the verifier would catch that later. Fixed by having castIsValid check that vector lengths match except when doing a bitcast. (2) When creating a cast instruction, check that the cast is valid (this was already done when creating constexpr casts). While there, replace getScalarSizeInBits (used to allow more vector casts) with getPrimitiveSizeInBits in getCastOpcode and isCastable since vector to vector casts are now handled explicitly by passing to the element types; i.e. this bit should result in no functional change. llvm-svn: 131532 | |||||
* | Teach getCastOpcode about element-by-element vector casts. For example, "trunc" | Duncan Sands | 2011-05-18 | 1 | -4/+25 | |
| | | | | | | | | | | | | | can be used to turn a <4 x i64> into a <4 x i32> but getCastOpcode would assert if you passed these types to it. Note that this strictly extends the previous functionality: if getCastOpcode previously accepted two vector types (i.e. didn't assert) then it still will and returns the same opcode (BitCast). That's because before it would only accept vectors with the same bitwidth, and the new code only touches vectors with the same length. However if two vectors have both the same bitwidth and the same length then their element types have the same bitwidth, so the new logic will return BitCast as before. llvm-svn: 131530 | |||||
* | In r131488 I misunderstood how VREV works. It splits the vector in half and ↵ | Tanya Lattner | 2011-05-18 | 2 | -1343/+1350 | |
| | | | | | | | | splits each half. Therefore, the real problem was that we were using a VREV64 for a 4xi16, when we should have been using a VREV32. Updated test case and reverted change to the PerfectShuffle Table. llvm-svn: 131529 |