aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add support to create class type.Devang Patel2010-12-084-2/+67
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121279 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an operator for vaba so it can be implemented using vabd.Bob Wilson2010-12-082-3/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121276 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize PostRAHazardRecognizer so it can be used in any pass forAndrew Trick2010-12-086-45/+71
| | | | | | | | | both forward and backward scheduling. Rename it to ScoreboardHazardRecognizer (Scoreboard is one word). Remove integer division from the scoreboard's critical path. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121274 91177308-0d34-0410-b5e6-96231b3b80d8
* Use this new fangled StringSwitch technology.Bill Wendling2010-12-081-32/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121273 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve comment.Owen Anderson2010-12-081-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121272 91177308-0d34-0410-b5e6-96231b3b80d8
* Add initializer.Jim Grosbach2010-12-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121262 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup table a bit.Bill Wendling2010-12-081-18/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121250 91177308-0d34-0410-b5e6-96231b3b80d8
* Add comments.Evan Cheng2010-12-081-8/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121238 91177308-0d34-0410-b5e6-96231b3b80d8
* Stub out RegAllocGreedy.Jakob Stoklund Olesen2010-12-084-0/+221
| | | | | | | | | This new register allocator is initially identical to RegAllocBasic, but it will receive all of the tricks that RegAllocBasic won't get. RegAllocGreedy will eventually replace linear scan. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121234 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix newlines.Bill Wendling2010-12-081-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121233 91177308-0d34-0410-b5e6-96231b3b80d8
* build: Shared libraries shouldn't used RPATH on Darwin, only main executablesDaniel Dunbar2010-12-081-4/+0
| | | | | | should use that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121231 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate this for Daniel.Eric Christopher2010-12-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121227 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for loading from a constant pool.Bill Wendling2010-12-087-10/+63
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121226 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support to create vector, array, enums etc...Devang Patel2010-12-083-7/+255
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121224 91177308-0d34-0410-b5e6-96231b3b80d8
* build: Don't force -flat_namespace or '-undefined suppress' on unsuspecting ↵Daniel Dunbar2010-12-081-2/+3
| | | | | | users of LLVM makefiles, these options really shouldn't be used on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121223 91177308-0d34-0410-b5e6-96231b3b80d8
* autoconf: Stop lying to me.Daniel Dunbar2010-12-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121222 91177308-0d34-0410-b5e6-96231b3b80d8
* Let target asm backends see assembler flags as they go by. Use that to handleJim Grosbach2010-12-083-5/+36
| | | | | | thumb vs. arm mode differences in WriteNopData(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121219 91177308-0d34-0410-b5e6-96231b3b80d8
* Move RABasic::addMBBLiveIns to the base class, it is generally useful.Jakob Stoklund Olesen2010-12-083-33/+35
| | | | | | | Minor optimization to the use of IntervalMap iterators. They are fairly heavyweight, so prefer SI.valid() over SI != end(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121217 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify the byte reordering logic slightly.Owen Anderson2010-12-081-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121216 91177308-0d34-0410-b5e6-96231b3b80d8
* VLDR fixups need special handling under Thumb. While the encoding is the same,Owen Anderson2010-12-083-2/+23
| | | | | | | the order of the bytes in the data stream is flipped around. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121215 91177308-0d34-0410-b5e6-96231b3b80d8
* Add operators for vadd[lw] and vsub[lw]Bob Wilson2010-12-082-0/+22
| | | | | | so they can be implemented without clang builtins. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121213 91177308-0d34-0410-b5e6-96231b3b80d8
* Global variable does not need linkage name.Devang Patel2010-12-082-6/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121212 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support to create local variable's debug info.Devang Patel2010-12-072-0/+52
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121211 91177308-0d34-0410-b5e6-96231b3b80d8
* Add operators for vmlal{_n,_lane} and vmlsl{_n,_lane}Bob Wilson2010-12-072-2/+37
| | | | | | so they can be implemented without clang builtins. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121209 91177308-0d34-0410-b5e6-96231b3b80d8
* Emit vmovl intrinsics first in the arm_neon.h headerBob Wilson2010-12-072-33/+47
| | | | | | so they can be used in the implementations of other intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121208 91177308-0d34-0410-b5e6-96231b3b80d8
* Layout each section independently. With the testcase in PR8711:Rafael Espindola2010-12-073-65/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before: 4 assembler - Number of assembler layout and relaxation steps 78563 assembler - Number of emitted assembler fragments 8693904 assembler - Number of emitted object file bytes 271223 assembler - Number of evaluated fixups 330771677 assembler - Number of fragment layouts 5958 assembler - Number of relaxed instructions 2508361 mcexpr - Number of MCExpr evaluations real 0m26.123s user 0m25.694s sys 0m0.388s after: 4 assembler - Number of assembler layout and relaxation steps 78563 assembler - Number of emitted assembler fragments 8693904 assembler - Number of emitted object file bytes 271223 assembler - Number of evaluated fixups 231507 assembler - Number of fragment layouts 5958 assembler - Number of relaxed instructions 2508361 mcexpr - Number of MCExpr evaluations real 0m2.500s user 0m2.113s sys 0m0.273s And yes, the outputs are identical :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121207 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a warning about a variable which is only used in an assertion.Matt Beaumont-Gay2010-12-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121206 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support to create variables, structs etc.. using DIBuilder.Devang Patel2010-12-074-12/+371
| | | | | | | This is still work in progress. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121205 91177308-0d34-0410-b5e6-96231b3b80d8
* Switch LiveIntervalUnion from std::set to IntervalMap.Jakob Stoklund Olesen2010-12-074-212/+100
| | | | | | | This speeds up RegAllocBasic by 20%, not counting releaseMemory which becomes way faster. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121201 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix begin() and end() on const IntervalMap.Jakob Stoklund Olesen2010-12-071-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121200 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup in the Darwin end. No functionality change.Bill Wendling2010-12-071-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121198 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bad prologue / epilogue codegen bug where the compiler would emit illegalEvan Cheng2010-12-073-68/+132
| | | | | | | | | | | | vpush instructions to save / restore VFP / NEON registers like this: vpush {d8,d10,d11} vpop {d8,d10,d11} vpush and vpop do not allow gaps in the register list. rdar://8728956 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121197 91177308-0d34-0410-b5e6-96231b3b80d8
* Add source Record* reference to PatternToMatch. Allows better diagnostics.Jim Grosbach2010-12-073-12/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121196 91177308-0d34-0410-b5e6-96231b3b80d8
* A bit of cleanup: early exit ApplyFixup and cache the Fixup offset. NoBill Wendling2010-12-071-13/+14
| | | | | | | functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121195 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an operator for vdup_lane so it can be implemented without a clang builtin.Bob Wilson2010-12-072-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121190 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an operator for vmull_lane so it can be implemented without a clang builtin.Bob Wilson2010-12-072-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121187 91177308-0d34-0410-b5e6-96231b3b80d8
* Binary encoding for ARM tLDRspi and tSTRspi.Jim Grosbach2010-12-073-8/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121186 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle recursive values. Add comments.Devang Patel2010-12-071-23/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121184 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Thumb2 encoding of the S bit.Owen Anderson2010-12-072-23/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121182 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove reference to the CMPz instruction patterns for ARM.Jim Grosbach2010-12-071-8/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121180 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor the ARM CMPz* patterns to just use the normal CMP instructions whenJim Grosbach2010-12-076-41/+25
| | | | | | | possible. They were duplicates for everything exception the source pattern before. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121179 91177308-0d34-0410-b5e6-96231b3b80d8
* Code clean up; no functionality change.Evan Cheng2010-12-071-16/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121176 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new built-in operations for vmull and vmull_nBob Wilson2010-12-072-0/+22
| | | | | | | so they can be implemented without requiring clang builtins. Radar 8446238. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121173 91177308-0d34-0410-b5e6-96231b3b80d8
* Code clean up; no functionality change.Evan Cheng2010-12-071-11/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121172 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the code from Function::dropAllReferences which replacedDan Gohman2010-12-071-13/+4
| | | | | | | | | | uses of the function's blocks with undef. This code isn't needed, because BasicBlock's destructor handles such uses. Also, undef isn't correct, since blockaddresses may still be used for comparisons with null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121170 91177308-0d34-0410-b5e6-96231b3b80d8
* Trailing whitespace.Jim Grosbach2010-12-071-29/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121167 91177308-0d34-0410-b5e6-96231b3b80d8
* Change assert to diagnostic. Message still needs work, but it's better thanJim Grosbach2010-12-071-3/+9
| | | | | | an assert, at least. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121166 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove target specific node MipsISD::CMov, which is not used because all ↵Bruno Cardoso Lopes2010-12-073-9/+1
| | | | | | conditional moves are directly matched using tablegen patterns. If there's a need in the future, we can introduce it again git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121164 91177308-0d34-0410-b5e6-96231b3b80d8
* Match a pattern generated by a dag combiner opt where:Bruno Cardoso Lopes2010-12-073-2/+27
| | | | | | | | | | (select (load (load tga0)) (load tga1)) => (load (select (load tga0) tga1)) Thanks to Akira for pointing that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121163 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify assertion.Jakob Stoklund Olesen2010-12-071-9/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121162 91177308-0d34-0410-b5e6-96231b3b80d8