Commits

Show all
Author Commit Message Labels Comments Date
Evan Cheng
Teach two-address pass to do some coalescing while eliminating REG_SEQUENCE instructions. e.g. %reg1026<def> = VLDMQ %reg1025<kill>, 260, pred:14, pred:%reg0 %reg1027<def> = EXTRACT_SUBREG %reg1026, 6 %reg1028<def> = EXTRACT_SUBREG %reg1026<kill>, 5 ... %reg1029<def> = REG_SEQUENCE %reg1028<kill>, 5, %reg1027<kill>, 6, %reg1028, 7, %reg1027, 8, %reg1028, 9, %reg1027, 10, %reg1030<kill>, 11, %reg1032<kill>, 12 After REG_SEQUENCE is eliminated, we are left with: %reg1026<def> = VLDMQ %…
Tags
cremebrulee-60
convert-repo
update tags
Dan Gohman
Add some comments about undef.
Evan Cheng
Model VST*_UPD and VST*oddUPD pair with REG_SEQUENCE.
Dan Gohman
Fast ISel trivially coalesces away no-op casts, so check for this when setting kill flags.
Jakob Stoklund Olesen
Don't bother spilling before a return
Jakob Stoklund Olesen
RegAllocLocal can count copies too
Bill Wendling
SystemZ really does mean "has calls" and not just "adjusts stack." Go ahead and replace the check with the appropriate predicate. Modify the testcase to reflect the correct code. (It should be saving callee-saved registers on the stack allocated by the calling fuction.)
Jakob Stoklund Olesen
Track allocatable instead of reserved regs, and never take an unallocatable hint.
Dan Gohman
Don't set kill flags for instructions which the scheduler has cloned.
Dan Gohman
BR is a barrier.
Bill Wendling
Several tail call tests apparently rely upon this being "adjusts stack" instead of "has calls". That's probably wrong, but it needs further investigation. Revert to the original behavior until this is settled.
Jakob Stoklund Olesen
Avoid scanning the long tail of physreg operands on calls
Devang Patel
Do not forget to mark prcessed arguments.
Jakob Stoklund Olesen
Count coalesced copies
Jakob Stoklund Olesen
Allow virtreg redefines when verifying for RegAllocFast
Bill Wendling
This should happen if there are no calls, not if it just doesn't adjust the stack.
Bill Wendling
Revert r103804. The comment is correct.
Jim Grosbach
Remove trailing whitespace
Jim Grosbach
80 column and trailing whitespace cleanup
Jim Grosbach
add cmd line option to leave dbgvalues in during post-RA sceduling. Useful while debugging what's mishandled about them in the post-RA pass.
Bill Wendling
Fix comment.
Bill Wendling
Rename "HasCalls" in MachineFrameInfo to "AdjustsStack" to better describe what the variable actually tracks. N.B., several back-ends are using "HasCalls" as being synonymous for something that adjusts the stack. This isn't 100% correct and should be looked into.
Devang Patel
Test case for r103800.
Dan Gohman
Lowering of atomic instructions can result in operands being used more than once. If ISel had put a kill flag on one of them, it's not valid to transfer the kill flag to each new instance.
Devang Patel
Add support to preserve type info for the variables that are removed by the optimizer.
Jakob Stoklund Olesen
When verifying two-address instructions, check the following: - Kill is implicit when use and def registers are identical. - Only virtual registers can differ. Add a -verify-fast-regalloc to run the verifier before the fast allocator.
Kevin Enderby
Fix so "int3" is correctly accepted, added "into" and fixed "int" with an argument, like "int $4", to not get an Assertion error.
Evan Cheng
Model VLD*_UPD and VLD*odd_UPD pair with REG_SEQUENCE.
Daniel Dunbar
MC/Mach-O/x86_64: Darwin's special "signed_N" relocation types should only be used to replace a normal relocation, not a reference to a GOT entry.
  1. Prev
  2. Next