| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | use callsite to obtain all arguments | Gabor Greif | 2010-06-24 | 1 | -1/+2 | |
| | | | | | llvm-svn: 106729 | |||||
| * | use callsite to obtain all arguments | Gabor Greif | 2010-06-24 | 1 | -1/+2 | |
| | | | | | llvm-svn: 106728 | |||||
| * | Teach the x86 mc assembler that %dr6 = %db6, this implements | Chris Lattner | 2010-06-24 | 2 | -0/+54 | |
| | | | | | | | rdar://8013734 llvm-svn: 106725 | |||||
| * | more cleanups | Chris Lattner | 2010-06-24 | 1 | -21/+15 | |
| | | | | | llvm-svn: 106724 | |||||
| * | reduce indentation | Chris Lattner | 2010-06-24 | 1 | -20/+15 | |
| | | | | | llvm-svn: 106723 | |||||
| * | fix breakage from r98938 by correctly marking msp430 calls as variadic. | Chris Lattner | 2010-06-24 | 1 | -1/+1 | |
| | | | | | | | Patch by Ben Ransford! llvm-svn: 106722 | |||||
| * | Fix a bug in the code which determines when it's safe to use the | Dan Gohman | 2010-06-24 | 1 | -7/+13 | |
| | | | | | | | bt instruction, which was exposed by r106263. llvm-svn: 106718 | |||||
| * | Add a couple more quick comments. | Eric Christopher | 2010-06-24 | 2 | -0/+4 | |
| | | | | | llvm-svn: 106717 | |||||
| * | Optimize the "bit test" code path for switch lowering in the | Dan Gohman | 2010-06-24 | 1 | -15/+27 | |
| | | | | | | | case where the bit mask has exactly one bit. llvm-svn: 106716 | |||||
| * | Revert "Replace a big gob of old coalescer logic with the new CoalescerPair ↵ | Jakob Stoklund Olesen | 2010-06-24 | 4 | -205/+544 | |
| | | | | | | | | | class." Whiny buildbots. llvm-svn: 106710 | |||||
| * | use getNumArgOperands | Gabor Greif | 2010-06-24 | 1 | -1/+1 | |
| | | | | | llvm-svn: 106709 | |||||
| * | use ArgOperand API | Gabor Greif | 2010-06-24 | 3 | -4/+4 | |
| | | | | | llvm-svn: 106707 | |||||
| * | Use ValueMap instead of DenseMap. | Devang Patel | 2010-06-24 | 10 | -60/+59 | |
| | | | | | | | The ValueMapper used by various cloning utility maps MDNodes also. llvm-svn: 106706 | |||||
| * | Add AVX CMP{SS,SD}{rr,rm} instructions and encoding testcases | Bruno Cardoso Lopes | 2010-06-24 | 2 | -30/+61 | |
| | | | | | llvm-svn: 106705 | |||||
| * | Move SSE and AVX shuffle, unpack and compare code to more appropriate places | Bruno Cardoso Lopes | 2010-06-24 | 1 | -166/+185 | |
| | | | | | llvm-svn: 106702 | |||||
| * | Replace a big gob of old coalescer logic with the new CoalescerPair class. | Jakob Stoklund Olesen | 2010-06-24 | 4 | -544/+205 | |
| | | | | | | | | | CoalescerPair can determine if a copy can be coalesced, and which register gets merged away. The old logic in SimpleRegisterCoalescing had evolved into something a bit too convoluted. llvm-svn: 106701 | |||||
| * | Use available typedef for " DenseMap<const Value*, Value*>". | Devang Patel | 2010-06-24 | 2 | -8/+8 | |
| | | | | | llvm-svn: 106699 | |||||
| * | Cosmetic change. | Devang Patel | 2010-06-23 | 6 | -102/+102 | |
| | | | | | | | Do not use "ValueMap" as a name for a local variable or an argument. llvm-svn: 106698 | |||||
| * | use ArgOperand accessors | Gabor Greif | 2010-06-23 | 2 | -13/+13 | |
| | | | | | llvm-svn: 106697 | |||||
| * | We are missing opportunites to use ldm. Take code like this: | Bill Wendling | 2010-06-23 | 2 | -0/+121 | |
| | | | | | | | | | | | | | | | void t(int *cp0, int *cp1, int *dp, int fmd) { int c0, c1, d0, d1, d2, d3; c0 = (*cp0++ & 0xffff) | ((*cp1++ << 16) & 0xffff0000); c1 = (*cp0++ & 0xffff) | ((*cp1++ << 16) & 0xffff0000); /* ... */ } It code gens into something pretty bad. But with this change (analogous to the X86 back-end), it will use ldm and generate few instructions. llvm-svn: 106693 | |||||
| * | use the new isFreeCall API and ArgOperand accessors | Gabor Greif | 2010-06-23 | 1 | -12/+13 | |
| | | | | | llvm-svn: 106692 | |||||
| * | minor enhancement to llvm::isFreeCall API: return CallInst; no functional change | Gabor Greif | 2010-06-23 | 1 | -8/+8 | |
| | | | | | llvm-svn: 106686 | |||||
| * | use ArgOperand getters | Gabor Greif | 2010-06-23 | 1 | -3/+3 | |
| | | | | | llvm-svn: 106685 | |||||
| * | Add AVX MOVMSK{PS,PD}rr instructions | Bruno Cardoso Lopes | 2010-06-23 | 1 | -6/+19 | |
| | | | | | llvm-svn: 106683 | |||||
| * | Add tests for different AVX cmp opcodes, also teach the x86 asm parser to ↵ | Bruno Cardoso Lopes | 2010-06-23 | 1 | -6/+8 | |
| | | | | | | | understand the vcmp instruction llvm-svn: 106678 | |||||
| * | Update according to feedback. | Eric Christopher | 2010-06-23 | 2 | -5/+5 | |
| | | | | | llvm-svn: 106677 | |||||
| * | Add AVX SHUF{PS,PD}{rr,rm} instructions | Bruno Cardoso Lopes | 2010-06-23 | 1 | -26/+30 | |
| | | | | | llvm-svn: 106672 | |||||
| * | Add support for the x86 instructions "pusha" and "popa". | Nico Weber | 2010-06-23 | 1 | -0/+11 | |
| | | | | | llvm-svn: 106671 | |||||
| * | Do not do tail calls to external symbols. If the | Dale Johannesen | 2010-06-23 | 1 | -12/+9 | |
| | | | | | | | | | | | | branch turns out to be ARM-to-Thumb or vice versa the linker cannot resolve this. 8120438. If this optimization is going to be useful we probably need a compiler flag "assume callees are same architecture" or something like that. llvm-svn: 106662 | |||||
| * | MorphNodeTo doesn't preserve the memory operands. Because we're morphing a node | Bill Wendling | 2010-06-23 | 1 | -0/+21 | |
| | | | | | | | | into the same node, but with different non-memory operands, we need to replace the memory operands after it's finished morphing. llvm-svn: 106643 | |||||
| * | Revert r106263, "Fold the ShrinkDemandedOps pass into the regular ↵ | Daniel Dunbar | 2010-06-23 | 5 | -54/+113 | |
| | | | | | | | DAGCombiner pass,"... it was causing both 'file' (with clang) and 176.gcc (with llvm-gcc) to be miscompiled. llvm-svn: 106634 | |||||
| * | The generic DAG combiner can now fold atomic fences when needed, so switch | Jim Grosbach | 2010-06-23 | 1 | -57/+6 | |
| | | | | | | | to using that. llvm-svn: 106633 | |||||
| * | When using libcall expansions for the atomic intrinsics, the explicit | Jim Grosbach | 2010-06-23 | 1 | -0/+2 | |
| | | | | | | | | MEMBARRIER fences aren't necessary for ARM. Tell the combiner to fold them away. llvm-svn: 106631 | |||||
| * | Some targets don't require the fencing MEMBARRIER instructions surrounding | Jim Grosbach | 2010-06-23 | 2 | -0/+56 | |
| | | | | | | | | | atomic intrinsics, either because the use locking instructions for the atomics, or because they perform the locking directly. Add support in the DAG combiner to fold away the fences. llvm-svn: 106630 | |||||
| * | Add a few VNInfo data structure checks. | Jakob Stoklund Olesen | 2010-06-23 | 1 | -2/+5 | |
| | | | | | llvm-svn: 106627 | |||||
| * | use ArgOperand accessors | Gabor Greif | 2010-06-23 | 1 | -13/+13 | |
| | | | | | llvm-svn: 106626 | |||||
| * | use ArgOperand accessors | Gabor Greif | 2010-06-23 | 1 | -5/+6 | |
| | | | | | llvm-svn: 106623 | |||||
| * | use helper to neatly access arguments | Gabor Greif | 2010-06-23 | 1 | -5/+6 | |
| | | | | | llvm-svn: 106622 | |||||
| * | Update uses, defs, and comments for darwin tls patterns. | Eric Christopher | 2010-06-23 | 2 | -13/+9 | |
| | | | | | llvm-svn: 106621 | |||||
| * | Revert r106066, "Create a more targeted fix for not sinking instructions ↵ | Daniel Dunbar | 2010-06-23 | 2 | -34/+53 | |
| | | | | | | | | | | | into a range where it"... it causes bzip2 to be miscompiled by Clang. Conflicts: lib/CodeGen/MachineSink.cpp llvm-svn: 106614 | |||||
| * | Get the addend correct for i386 pic. | Eric Christopher | 2010-06-22 | 1 | -1/+7 | |
| | | | | | | | Thanks Daniel! llvm-svn: 106608 | |||||
| * | Replace ScalarEvolution's private copy of getLoopPredecessor | Dan Gohman | 2010-06-22 | 1 | -19/+2 | |
| | | | | | | | with LoopInfo's public copy. llvm-svn: 106603 | |||||
| * | Add AVX compare packed instructions | Bruno Cardoso Lopes | 2010-06-22 | 2 | -34/+65 | |
| | | | | | llvm-svn: 106600 | |||||
| * | Revert 106592 for now. It causes clang-selfhost build failure. | Devang Patel | 2010-06-22 | 1 | -34/+13 | |
| | | | | | llvm-svn: 106598 | |||||
| * | Fix OptimizeMax to handle an odd case where one of the max operands | Dan Gohman | 2010-06-22 | 1 | -1/+4 | |
| | | | | | | | is another max which folds. This fixes PR7454. llvm-svn: 106594 | |||||
| * | Reapply support for AVX unpack and interleave instructions, with | Bruno Cardoso Lopes | 2010-06-22 | 1 | -44/+42 | |
| | | | | | | | testcases this time. llvm-svn: 106593 | |||||
| * | If a metadata operand is seeded in value map and the metadata should also be ↵ | Devang Patel | 2010-06-22 | 1 | -13/+34 | |
| | | | | | | | | | | | | seeded in value map. This is not limited to function local metadata. Failure to seed metdata in such cases causes troubles when in a cloned module, metadata from a new module refers to values in old module. Usually this results in mysterious bugpoint crashes. For example, Checking to see if we can delete global inits: Unknown constant! UNREACHABLE executed at /d/g/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp:904! llvm-svn: 106592 | |||||
| * | While cloning a module, clone metadata attached with instructions. | Devang Patel | 2010-06-22 | 1 | -1/+16 | |
| | | | | | llvm-svn: 106591 | |||||
| * | Add AVX MOV{SS,SD}{rr,rm} instructions | Bruno Cardoso Lopes | 2010-06-22 | 4 | -33/+67 | |
| | | | | | llvm-svn: 106588 | |||||
| * | Fix the formatting of the switch statement and add a missing break. | Bill Wendling | 2010-06-22 | 1 | -3/+4 | |
| | | | | | llvm-svn: 106586 | |||||

