aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-12-12Fix paths; AutoRegen.sh changes its current working directory to be thePeter Collingbourne
autoconf directory, but these paths need to be relative to the main source directory. Patch originally by Dan Gohman, r67655. Also, cause configure.ac to find absolute paths to LLVM source and object trees. Together, fixes PR1220. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121645 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-121. Change MBlaze indirect branches to use absolute branch BRALD instead of ↵Wesley Peck
pc relative branch BRLD. 2. Make sure that the MBlaze stack is aligned to 4-byte boundaries. 3. Determine frame indexes that should be placed in the callers stack frame, as per the MBlaze ABI, and place them in the correct locations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121639 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-12Catch attempts to remove a deleted node from the CSE maps. Better toDuncan Sands
catch this here rather than later after accessing uninitialized memory etc. Fires when compiling the testcase in PR8237. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121635 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-12fix typoChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121620 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-11Generalize the and-icmp-select instcombine further by allowing selects of ↵Benjamin Kramer
the form (x & 2^n) ? 2^m+C : C we can offset both arms by C to get the "(x & 2^n) ? 2^m : 0" form, optimize the select to a shift and apply the offset afterwards. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121609 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-11Factor the (x & 2^n) ? 2^m : 0 instcombine into its own method and generalize itBenjamin Kramer
to catch cases where n != m with a shift. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121608 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-11(or (and (shl A, #shamt), mask), B) => ARMbfi B, A, ~mask where lsb(mask) == ↵Evan Cheng
#shamt. rdar://8752056 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121606 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-11Add named timer groups for the different stages of register allocation.Jakob Stoklund Olesen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121604 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Move MRI into RegAllocBase. Clean up debug output a bit.Jakob Stoklund Olesen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121599 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Add FIXMEJim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121598 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Remove extraneous close parenthesis.Nick Lewycky
Fix build breakage. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121596 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Move variable that's unused in an NDEBUG build inside the DEBUG() macro, fixingNick Lewycky
lib/CodeGen/RegAllocGreedy.cpp:233: error: unused variable 'TRC' [-Wunused-variable] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121594 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Attempt to get Thumb2 branch fixups working properly.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121593 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Force the greedy register allocator to always use the inline spiller.Jakob Stoklund Olesen
Soon, RegAllocGreedy will start splitting live ranges, and then deferred spilling won't work anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121591 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Rip out live range splitting support from the inline spiller.Jakob Stoklund Olesen
The spiller should only spill. The register allocator will drive live range splitting, it has the needed information about register pressure and interferences. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121590 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Get rid of ellipses.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121589 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix merge error in my last fix to Thumb2 vldr fixups.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121588 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fixups for Thumb2 vldr's need to have the effective PC aligned as well.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121587 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10The MCFixupKindInfo table needs to be in the order that the enums wereBill Wendling
declared. Add a note specifying this and spruce up the list a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Provide the necessary post-encoder hook for Thumb2 encodings of VMOV and ↵Owen Anderson
friends. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121585 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Use AllocationOrder in RegAllocGreedy, fix a bug in the hint calculation.Jakob Stoklund Olesen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121584 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Add float patterns for Neon vld1-lane/dup and vst1-lane operations.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121583 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Remove unused arguments.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121582 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix encoding of Thumb1 LDRB and STRB.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121581 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Trailing whitespace.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121580 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix Thumb2 encodings of STREX and LDREX.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121579 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Revert r121520, which may have introduced miscompilations.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121573 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Correct encoding of rotation immediate for Thumb2 instructions. rdar://8755999Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121525 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix encoding of 'U' bit for Thumb2 STRD/LDRD instructions. rdar://8755726Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121524 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10More trivial cleanup. No need to define the EncoderMethod property type. CanJim Grosbach
just assign to it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121523 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Tidy up.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121522 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Trailing whitespace.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121521 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Implement PartialAlias checking in BasicAA.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121520 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix miscompilation caused by trivial logic error in the reassignVReg()Jakob Stoklund Olesen
interference check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121519 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Minimally update this code to handle PartialAlias.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121518 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Use PartialAlias to do better noalias lint checking.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121514 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Teach AliasAnalysisCounter about PartialAlias.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121513 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Teach AliasAnalysisEvaluator about PartialAlias.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121512 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Update this code to handle PartialAlias as MayAlias.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121508 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Introduce a new PartialAlias response for AliasAnalysis. For mostDan Gohman
AliasAnalysis consumers, PartialAlias will be treated as MayAlias. For AliasAnalysis chaining, MayAlias says "procede to the next analysis". PartialAlias will be used to indicate that the query should terminate, even though it didn't reach MustAlias or NoAlias. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121507 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Fix some invalid alignments for Neon vld-dup and vld/st-lane instructions.Bob Wilson
Alignments smaller than the total size of the memory being loaded or stored, unless the alignment is 8 bytes, are not allowed. Add tests for this, too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121506 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Teach isCSRestore() that ARM/Thumb2 functions will use post-modify LDRJim Grosbach
instructions to restore a single register rather than an LDM instruction. rdar://8754999 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121498 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Add an AllocationOrder class that can iterate over the allocatable physicalJakob Stoklund Olesen
registers for a given virtual register. Reserved registers are filtered from the allocation order, and any valid hint is returned as the first suggestion. For target dependent hints, a number of arcane target hooks are invoked. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121497 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Thumb unconditional branch binary encoding. rdar://8754994Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121496 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Thumb conditional branch binary encodings. rdar://8745367Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121493 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Another git svn dcommit test. This time let's hope it doesn't kill my repo.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121485 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Another git-svn dcommit test. (last time I got access and client errors and ↵Michael J. Spencer
it broke everything locally;/) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121484 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Test git svn dcommitMichael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121483 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Another dummy commit to check GIT mirroringAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121481 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-10Dummy commit to test GIT mirroringAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121479 91177308-0d34-0410-b5e6-96231b3b80d8