Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | RABasic fix. Regalloc is responsible for updating block live ins. | Andrew Trick | 2010-11-20 | 1 | -0/+30 |
| | | | | llvm-svn: 119896 | ||||
* | Whitespace. | Andrew Trick | 2010-11-20 | 1 | -20/+20 |
| | | | | llvm-svn: 119895 | ||||
* | Add more Thumb add instruction encodings. | Bill Wendling | 2010-11-20 | 1 | -12/+47 |
| | | | | llvm-svn: 119883 | ||||
* | Add Thumb encodings for some add instructions. | Bill Wendling | 2010-11-20 | 1 | -6/+26 |
| | | | | llvm-svn: 119882 | ||||
* | Add more encodings for Thumb instructions. | Bill Wendling | 2010-11-20 | 1 | -15/+30 |
| | | | | llvm-svn: 119881 | ||||
* | Have the getAddrMode3OpValue() function in ARMCodeEmitter.cpp produce the same | Bill Wendling | 2010-11-20 | 1 | -9/+21 |
| | | | | | | value that the one in ARMMCCodeEmitter.cpp does. llvm-svn: 119878 | ||||
* | Check for _setjmp too, because it's also used. | Bill Wendling | 2010-11-20 | 1 | -0/+1 |
| | | | | llvm-svn: 119875 | ||||
* | Fix ARM LDR* post-indexed operand encoding. | Jim Grosbach | 2010-11-19 | 1 | -5/+5 |
| | | | | llvm-svn: 119869 | ||||
* | Encodings for the compare instructions. | Bill Wendling | 2010-11-19 | 1 | -8/+19 |
| | | | | llvm-svn: 119868 | ||||
* | The Vm and Vn register fields must be the same for a register-register vmov. | Owen Anderson | 2010-11-19 | 1 | -2/+6 |
| | | | | llvm-svn: 119867 | ||||
* | Fix a cut-n-paste-error. | Evan Cheng | 2010-11-19 | 1 | -1/+1 |
| | | | | llvm-svn: 119866 | ||||
* | Document the new GVN number table structure. | Owen Anderson | 2010-11-19 | 1 | -0/+12 |
| | | | | llvm-svn: 119865 | ||||
* | Operand names | Jim Grosbach | 2010-11-19 | 1 | -4/+4 |
| | | | | llvm-svn: 119864 | ||||
* | trailing whitespace | Jim Grosbach | 2010-11-19 | 1 | -16/+16 |
| | | | | llvm-svn: 119863 | ||||
* | Don't need to save piecemeal now. | Eric Christopher | 2010-11-19 | 1 | -4/+2 |
| | | | | llvm-svn: 119862 | ||||
* | Update comment. | Eric Christopher | 2010-11-19 | 1 | -3/+2 |
| | | | | llvm-svn: 119861 | ||||
* | Add encodings for some of the thumb ADD instructions. Tests will come once the | Bill Wendling | 2010-11-19 | 1 | -16/+44 |
| | | | | | | asm parser can handle them. llvm-svn: 119860 | ||||
* | Update comment. | Eric Christopher | 2010-11-19 | 1 | -1/+1 |
| | | | | llvm-svn: 119859 | ||||
* | Clarify operand names. | Jim Grosbach | 2010-11-19 | 1 | -3/+3 |
| | | | | llvm-svn: 119858 | ||||
* | Refactor address mode handling into a single struct (ala x86), this | Eric Christopher | 2010-11-19 | 1 | -50/+72 |
| | | | | | | | | should give allow a wider range of addressing modes. No functional change. llvm-svn: 119856 | ||||
* | Fix encoding for ARM MLS instruction. | Jim Grosbach | 2010-11-19 | 1 | -3/+5 |
| | | | | llvm-svn: 119855 | ||||
* | When folding addressing modes in CodeGenPrepare, attempt to look through PHI ↵ | Owen Anderson | 2010-11-19 | 1 | -3/+29 |
| | | | | | | | | | nodes if all the operands of the PHI are equivalent. This allows CodeGenPrepare to undo unprofitable PRE transforms. llvm-svn: 119853 | ||||
* | Add ARM encoding information for STRD. | Jim Grosbach | 2010-11-19 | 2 | -17/+4 |
| | | | | llvm-svn: 119852 | ||||
* | Shuffle things around a bit to keep like things together. Tidy up formatting. | Jim Grosbach | 2010-11-19 | 1 | -20/+20 |
| | | | | llvm-svn: 119851 | ||||
* | Revert accidental commit. | Bill Wendling | 2010-11-19 | 1 | -3/+4 |
| | | | | llvm-svn: 119850 | ||||
* | Change long binary encodings to use hex instead. It's more readable. Also | Bill Wendling | 2010-11-19 | 1 | -17/+20 |
| | | | | | | initialize missing bit. llvm-svn: 119849 | ||||
* | Factor out operand encoding bits for ARM addressing mode 2 store instructions. | Jim Grosbach | 2010-11-19 | 2 | -58/+33 |
| | | | | llvm-svn: 119846 | ||||
* | Delete another dead class. | Jim Grosbach | 2010-11-19 | 1 | -12/+0 |
| | | | | llvm-svn: 119844 | ||||
* | whitespace tweak. | Jim Grosbach | 2010-11-19 | 1 | -1/+0 |
| | | | | llvm-svn: 119843 | ||||
* | Fix a use after free. Patch by Frits van Bommel. | Rafael Espindola | 2010-11-19 | 1 | -6/+9 |
| | | | | llvm-svn: 119842 | ||||
* | Refactor PICSTR* instructions to really be pseudos. Nuke dead classes. | Jim Grosbach | 2010-11-19 | 2 | -52/+6 |
| | | | | llvm-svn: 119841 | ||||
* | Rename ARM .td class AIldst1 to AI2ldst for consistency with the other classes. | Jim Grosbach | 2010-11-19 | 2 | -7/+7 |
| | | | | llvm-svn: 119840 | ||||
* | Add ARM binary encoding information for the rest of the indexed loads. | Jim Grosbach | 2010-11-19 | 2 | -175/+63 |
| | | | | llvm-svn: 119821 | ||||
* | Make isScalarToVector to return false if the node is a scalar. This will prevent | Mon P Wang | 2010-11-19 | 1 | -0/+2 |
| | | | | | | | DAGCombine from making an illegal transformation of bitcast of a scalar to a vector into a scalar_to_vector. llvm-svn: 119819 | ||||
* | Added support for the Mach-O .symbol_resolver directive. rdar://8673046 | Kevin Enderby | 2010-11-19 | 6 | -0/+10 |
| | | | | llvm-svn: 119816 | ||||
* | Remove dead code. | Jim Grosbach | 2010-11-19 | 1 | -10/+0 |
| | | | | llvm-svn: 119815 | ||||
* | ARM LDRD binary encoding. | Jim Grosbach | 2010-11-19 | 2 | -22/+12 |
| | | | | llvm-svn: 119812 | ||||
* | Remove hard tabs. | Jim Grosbach | 2010-11-19 | 1 | -2/+2 |
| | | | | llvm-svn: 119810 | ||||
* | Remove trailing whitespace. | Jim Grosbach | 2010-11-19 | 1 | -62/+62 |
| | | | | llvm-svn: 119806 | ||||
* | Avoid release build warnings. | Benjamin Kramer | 2010-11-19 | 2 | -4/+4 |
| | | | | llvm-svn: 119804 | ||||
* | Fix decoding ambiguities of stdrex and ldrex. | Owen Anderson | 2010-11-19 | 1 | -4/+0 |
| | | | | llvm-svn: 119801 | ||||
* | Silence warning about an uninitialized variable. | Benjamin Kramer | 2010-11-19 | 1 | -1/+1 |
| | | | | llvm-svn: 119800 | ||||
* | Remove threading of Xor over selects and phis, with an explanation | Duncan Sands | 2010-11-19 | 1 | -13/+18 |
| | | | | | | of why such threading is pointless. llvm-svn: 119798 | ||||
* | Add a MCLineSectionOrder vector so that we produce the line tables in a | Rafael Espindola | 2010-11-19 | 1 | -10/+15 |
| | | | | | | deterministic order. llvm-svn: 119795 | ||||
* | These instructions are thumb2 only. | Evan Cheng | 2010-11-19 | 1 | -1/+1 |
| | | | | llvm-svn: 119793 | ||||
* | Fix an obvious oversight. | Evan Cheng | 2010-11-19 | 1 | -2/+2 |
| | | | | llvm-svn: 119792 | ||||
* | Don't attempt trivial coalescing for sub-register copies. | Jakob Stoklund Olesen | 2010-11-19 | 1 | -0/+4 |
| | | | | | | Patch by Krister Wombell! llvm-svn: 119791 | ||||
* | Add an assert. | Rafael Espindola | 2010-11-19 | 1 | -1/+3 |
| | | | | llvm-svn: 119788 | ||||
* | Add ADT/IntervalMap. | Jakob Stoklund Olesen | 2010-11-19 | 2 | -0/+61 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a sorted interval map data structure for small keys and values with automatic coalescing and bidirectional iteration over coalesced intervals. Except for coalescing intervals, it provides similar functionality to std::map. It is however much more compact for small keys and values, and hopefully faster too. The container object itself can hold the first few intervals without any allocations, then it switches to a cache conscious B+-tree representation. A recycling allocator can be shared between many containers, even between containers holding different types. The IntervalMap is initially intended to be used with SlotIndex intervals for: - Backing store for LiveIntervalUnion that is smaller and faster than std::set. - Backing store for LiveInterval with less overhead than std::vector for typical intervals and O(N log N) merging of large intervals. 99% of virtual registers need 4 entries or less and would benefit from the small object optimization. - Backing store for LiveDebugVariable which doesn't exist yet, but will track debug variables during register allocation. This is a work in progress. Missing items are: - Performance metrics. - erase(). - insert() shrinkage. - clear(). - More performance metrics. - Simplification and detemplatization. llvm-svn: 119787 | ||||
* | Fix llvm-gcc boostrap on OS X by avoiding printing sleb and uleb when | Rafael Espindola | 2010-11-19 | 1 | -0/+16 |
| | | | | | | possible. llvm-svn: 119785 |