- d3b376b Remove references to INSERT_SUBREG after de-SSA by Jakob Stoklund Olesen · 15 years ago
- ed2185e Convert INSERT_SUBREG to COPY in TwoAddressInstructionPass. by Jakob Stoklund Olesen · 15 years ago
- 273f7e4 Detect and handle COPY in many places. by Jakob Stoklund Olesen · 15 years ago
- 98ec91e - Two-address pass should not assume unfolding is always successful. by Evan Cheng · 15 years ago
- cc1ca98 When unfolding a load, avoid assuming which instruction that by Dan Gohman · 15 years ago
- 7aa7bc7 Fix the new load-unfolding code to update LiveVariable's dead flags, by Dan Gohman · 15 years ago
- 584fedf Teach two-address lowering how to unfold a load to open up commuting by Dan Gohman · 15 years ago
- fe181f4 Only run CoalesceExtSubRegs when we can expect LiveIntervalAnalysis to clean up by Jakob Stoklund Olesen · 15 years ago
- 4ffd22d Add some missing checks for the case where the extract_subregs are by Bob Wilson · 15 years ago
- 852a7e3 Generalize the pre-coalescing of extract_subregs feeding reg_sequences, by Bob Wilson · 15 years ago
- 68fc2da Allow target to place 2-address pass inserted copies in better spots. Thumb2 will use this to try to avoid breaking up IT blocks. by Evan Cheng · 15 years ago
- 66dc4e2 Fix a mistake in my previous change r105437: don't access operand 2 and assume by Bob Wilson · 15 years ago
- 26bf8f9 Add some missing checks in TwoAddressInstructionPass::CoalesceExtSubRegs. by Bob Wilson · 15 years ago
- 9edf7de Slightly change the meaning of the reMaterialize target hook when the original by Jakob Stoklund Olesen · 15 years ago
- 91a74da Rename canCombinedSubRegIndex method to something more grammatically correct by Bob Wilson · 15 years ago
- b2c2a97 Fix an obvious mistake: don't change the operands until all of them have been by Bob Wilson · 15 years ago
- 5a0d4fc Handle composed subreg indices when processing REQ_SEQUENCE instructions. by Jakob Stoklund Olesen · 15 years ago
- 1015ba7 - Change MachineInstr::findRegisterDefOperandIdx so it can also look for defs by Evan Cheng · 15 years ago
- 3437352 TwoAddressInstructionPass doesn't really know how to merge live intervals when by Jakob Stoklund Olesen · 15 years ago
- c6dcce3 Fix PR7175. Insert copies of a REG_SEQUENCE source if it is used by other REG_SEQUENCE instructions. by Evan Cheng · 15 years ago
- 44bfdd3 Fix PR7156. If the sources of a REG_SEQUENCE are all IMPLICIT_DEF's. Replace it with an IMPLICIT_DEF rather than deleting it or else it would be left without a def. by Evan Cheng · 15 years ago
- 53c779b Careful with reg_sequence coalescing to not to overwrite sub-register indices. by Evan Cheng · 15 years ago
- b990a2f Teach two-address pass to do some coalescing while eliminating REG_SEQUENCE by Evan Cheng · 15 years ago
- 054dbb8 If REG_SEQUENCE source is livein, copy it first. Also, update livevariables information when a copy is introduced. by Evan Cheng · 15 years ago
- 3ae56bc Code clean up. by Evan Cheng · 15 years ago
- 0bcccac Ensure REG_SEQUENCE source operands are unique. by Evan Cheng · 15 years ago
- fc6e6a9 Clear RegSequences vector after eliminating REG_SEQUENCE instructions. by Evan Cheng · 15 years ago
- 34dcc6f Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that it by Dan Gohman · 15 years ago
- 3d720fb Move REG_SEQUENCE removal to 2addr pass. by Evan Cheng · 15 years ago
- f1250ee Ignore dbg_value's. by Evan Cheng · 15 years ago
- 1423c70 Add MachineRegisterInfo::hasOneUse and hasOneNonDBGUse. by Evan Cheng · 15 years ago
- ac1abde Swap parameters of isSafeToMove and isSafeToReMat for consistency. by Evan Cheng · 15 years ago
- 3bfef03 Don't allow DBG_VALUE to affect codegen. by Dale Johannesen · 16 years ago
- b8ff934 Skip debug info in a couple of places. by Dale Johannesen · 16 years ago
- 518bb53 move target-independent opcodes out of TargetInstrInfo by Chris Lattner · 16 years ago
- d94998f Skip DEBUG_VALUE in some places where it was affecting codegen. by Dale Johannesen · 16 years ago
- eb00b18 Change errs() to dbgs(). by David Greene · 16 years ago
- 7896c9f improve portability to avoid conflicting with std::next in c++'0x. by Chris Lattner · 16 years ago
- 0b25ae1 Fix PR5300. by Jakob Stoklund Olesen · 16 years ago
- d57cdd5 - Change TargetInstrInfo::reMaterialize to pass in TargetRegisterInfo. by Evan Cheng · 16 years ago
- f5a86f4 Remove includes of Support/Compiler.h that are no longer needed after the by Nick Lewycky · 16 years ago
- 6726b6d Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. by Nick Lewycky · 16 years ago
- a70dca1 Factor out LiveIntervalAnalysis' code to determine whether an instruction by Dan Gohman · 16 years ago
- cc80df9 Overhaul the TwoAddressInstructionPass to simplify the logic, especially by Bob Wilson · 16 years ago
- d163917 Rearrange code to eliminate redundancy and avoid gotos. by Bob Wilson · 16 years ago
- 86f7cd7 Avoid calling removeVirtualRegisterKilled which iterates over the operands by Bob Wilson · 16 years ago
- 326f438 Refactor some code into separate functions. No functional changes. by Bob Wilson · 16 years ago
- c08f5fe Move use of LV inside condition that guards for null LV. by Bob Wilson · 16 years ago
- 71124f6 Fix pr4843: When an instruction has multiple destination registers that are by Bob Wilson · 16 years ago
- 4344979 Use early exit and reduce indentation. by Bob Wilson · 16 years ago
- d4034b2 If the tied registers are already the same, there is no need to change by Bob Wilson · 16 years ago
- 6456d38 remove some DOUTs by Chris Lattner · 16 years ago
- 3a3cce5 Code clean up. by Evan Cheng · 16 years ago
- 845012e Use setPreservesAll and setPreservesCFG in CodeGen passes. by Dan Gohman · 16 years ago
- ce63ffb More migration to raw_ostream, the water has dried up around the iostream hole. by Daniel Dunbar · 16 years ago
- 33d0474 Use TII->findCommutedOpIndices to find the commute operands (rather than guessing). by Evan Cheng · 16 years ago
- 3784453 Let callers decide the sub-register index on the def operand of rematerialized instructions. by Evan Cheng · 16 years ago
- ebfc177 Two-address pass should use findCommutedOpIndices to determine what registers are commuted. by Evan Cheng · 16 years ago
- aed4a43 Eliminate VarInfo::UsedBlocks. by Evan Cheng · 16 years ago
- a7c9dea Fix for PR4124. Make TwoAddressFormPass::FindLastUseInMBB return the real last use. by Lang Hames · 16 years ago
- 60dc734 Fix for PR4121. If TwoAddressInstructionPass removes a dead def, and the regB by Lang Hames · 16 years ago
- 1e8f072 Avoid warning in release-asserts build. by Mike Stump · 16 years ago
- e9ccb3a Fix for PR4051. When 2address pass delete an instruction, update kill info when necessary. by Evan Cheng · 16 years ago
- 87d696a Fix PR3934 part 2. findOnlyInterestingUse() was not setting IsCopy and IsDstPhys which are returned by value and used by callee. This happened to work on the earlier test cases because of a logic error in the caller side. by Evan Cheng · 16 years ago
- 3005ed6 PR3934: Fix a bogus two-address pass assertion. by Evan Cheng · 16 years ago
- 6ed0e20 Add an assertion to verify that a copy was actually emitted. by Dan Gohman · 16 years ago
- 97121ba Implement support for using modeling implicit-zero-extension on x86-64 by Dan Gohman · 16 years ago
- e6f350d Turn a 2-address instruction into a 3-address one when it's profitable even if the two-address operand is killed. by Evan Cheng · 16 years ago
- fb11288 Model inline asm constraint which ties an input to an output register as machine operand TIED_TO constraint. This eliminated the need to pre-allocate registers for these. This also allows register allocator can eliminate the unneeded copies. by Evan Cheng · 16 years ago
- a24752f Added MachineInstr::isRegTiedToDefOperand to check for two-addressness. by Evan Cheng · 16 years ago
- 870b807 Minor optimization: by Evan Cheng · 16 years ago
- 28c7ce3 If two-address def is dead and the instruction does not define other registers, and it doesn't produce side effects, just delete the instruction. by Evan Cheng · 16 years ago
- 1465d61 Rename getAnalysisToUpdate to getAnalysisIfAvailable. by Duncan Sands · 17 years ago
- d498c8f Teach 2addr pass to be do more commuting. If both uses of a two-address instruction are killed, but the first operand has a use before and after the def, commute if the second operand does not suffer from the same issue. by Evan Cheng · 17 years ago
- 8191371 Refactor code. No functionality change. by Evan Cheng · 17 years ago
- d68a076 Tidy up #includes, deleting a bunch of unnecessary #includes. by Dan Gohman · 17 years ago
- 2d9716f Do the LiveVariables update before printing the instruction in by Dan Gohman · 17 years ago
- 95dad83 Add an option to enable StrongPHIElimination, for ease of testing. by Owen Anderson · 17 years ago
- d735b80 Switch the MachineOperand accessors back to the short names like by Dan Gohman · 17 years ago
- ae73dc1 Tidy up several unbeseeming casts from pointer to intptr_t. by Dan Gohman · 17 years ago
- 8763c1c Move the check whether it's worth remating to caller. by Evan Cheng · 17 years ago
- df3b993 Refactor isSafeToReMat out of 2addr pass. by Evan Cheng · 17 years ago
- 9f1c831 - Remove calls to copyKillDeadInfo which is an N^2 function. Instead, propagate kill / dead markers as new instructions are constructed in foldMemoryOperand, convertToThressAddress, etc. by Evan Cheng · 17 years ago
- be04dc1 - Add LiveVariables::replaceKillInstruction. This does a subset of instructionChanged. That is, it only update the VarInfo.kills if the new instruction is known to have the correct dead and kill markers. by Evan Cheng · 17 years ago
- f660c17 Make LiveVariables even more optional, by making it optional in the call to TargetInstrInfo::convertToThreeAddressInstruction by Owen Anderson · 17 years ago
- 802af11 TwoAddressInstructionPass doesn't really require LiveVariables, it just needs to update it if it's already around. by Owen Anderson · 17 years ago
- fdb9983 Remove unneeded include. by Evan Cheng · 17 years ago
- 601ca4b Enable two-address remat by default. by Evan Cheng · 17 years ago
- 32a3ac7 Missed a check. by Evan Cheng · 17 years ago
- 7543e58 Complete support for two-address pass rematerialization. Now *almost* always a win. by Evan Cheng · 17 years ago
- bd0879d Implement "AsCheapAsAMove" for some obviously cheap instructions: xor and the by Bill Wendling · 17 years ago
- a8db147 Check the "isSafeToMove" predicate, which has a series of tests to make sure by Bill Wendling · 17 years ago
- b0f65e1 Incorporated feedback: Check that the implicitly defined operands aren't used by Bill Wendling · 17 years ago
- a16157a The enabling of remat in 2-address conversion breaks this test: by Bill Wendling · 17 years ago
- 48f7f23 A problem that's exposed when machine LICM is enabled. Consider this code: by Bill Wendling · 17 years ago
- 6ddba2b Change class' public PassInfo variables to by initialized with the by Dan Gohman · 17 years ago
- 844731a Clean up the use of static and anonymous namespaces. This turned up by Dan Gohman · 17 years ago
- 637980e Cosmetic changes: by Bill Wendling · 17 years ago
- 7a963fa Fix a memory bug: increment an iterator of a deleted machine instr. by Evan Cheng · 17 years ago
- a224868 Typo. by Evan Cheng · 17 years ago