- 9da02f5 Remove isReg, isImm, and isMBB, and change all their users to use by Dan Gohman · 18 years ago
- a6d5d2a by David Greene · 18 years ago
- 958cf3d If the source of a move is in spill slot, the reload may be folded to essentially a load from stack slot. It's ok to mark the stack slot value as available for reuse. But it should not be clobbered since the destination of the move is live. by Evan Cheng · 18 years ago
- 3f22fff - If a def is dead, do not spill it. by Evan Cheng · 18 years ago
- 6cb9fd7 If a MI's def is remat as well as spilled, and the store is later deemed dead, mark the def operand as isDead. by Evan Cheng · 18 years ago
- 2343865 If a spilled value is being reused and the use is a kill, that means there are by Evan Cheng · 18 years ago
- 78a8806 If a rematerializable def is not deleted, i.e. it is also spilled, check if the by Evan Cheng · 18 years ago
- 33820da Re-implement trivial rematerialization. This allows def MIs whose live intervals that are coalesced to be rematerialized. by Evan Cheng · 18 years ago
- 6b6d1f6 Missed a couple of places where new instructions are added due to spill / restore. by Evan Cheng · 18 years ago
- 74a5410 No longer need to track last def / use. by Evan Cheng · 18 years ago
- bec7a20 Fix for PR1545: Revamp code that update kill information due to register reuse. by Evan Cheng · 18 years ago
- 9e82064 Replace M_REMATERIALIZIBLE and the newly-added isOtherReMaterializableLoad by Dan Gohman · 18 years ago
- 4a4a8eb Add a target hook to allow loads from constant pools to be rematerialized, and an by Dan Gohman · 18 years ago
- 910c808 Rename findRegisterUseOperand to findRegisterUseOperandIdx to avoid confusion. by Evan Cheng · 19 years ago
- 0ba1745 Match MachineFunction::UsedPhysRegs changes. by Evan Cheng · 19 years ago
- 8be98c1 Re-materialize all loads from fixed stack slots. by Evan Cheng · 19 years ago
- 9a2a7b1 Don't add the same MI to register reuse "last def/use" twice if it reads the by Evan Cheng · 19 years ago
- fdbdf43 Don't call getOperandConstraint() if operand index is greater than by Evan Cheng · 19 years ago
- 4a09b1b Fix for PR1266. Don't mark a two address operand IsKill. by Evan Cheng · 19 years ago
- 0e3278e First cut trivial re-materialization support. by Evan Cheng · 19 years ago
- d74cb0e Only propagate IsKill if the last use is a kill. by Evan Cheng · 19 years ago
- 6605c5d - Keep track all def and uses of stack slot available in register. by Evan Cheng · 19 years ago
- 08f2f0d Invalidate last use of a reused register if the use is a deleted noop copy. by Evan Cheng · 19 years ago
- d6450ba A restore is promoted to copy (or deleted entirely), remove the kill from the last use of the targetted register. by Evan Cheng · 19 years ago
- 38fd9b0 A couple of more places where a register liveness has been extended and its last kill should be updated accordingly. by Evan Cheng · 19 years ago
- 520b20d Reuse extends the liveness of a register. Transfer the kill to the operand that reuse it. by Evan Cheng · 19 years ago
- f7e320c A spill kills the register being stored. But it is later being reused by spiller, its live range has to be extended. by Evan Cheng · 19 years ago
- de037a8 Use BitVector instead. No functionality change. by Evan Cheng · 19 years ago
- 61cd091 Dead code. by Evan Cheng · 19 years ago
- 6ad6fdb Fixed a long standing spiller bug that's exposed by Thumb: by Evan Cheng · 19 years ago
- 1998184 Switch this to use SmallSet to avoid mallocs in the common case. by Chris Lattner · 19 years ago
- fc74e2d GetRegForReload() now keeps track which registers have been considered and rejected during its quest to find a suitable reload register. This avoids an infinite loop in case like this: by Evan Cheng · 19 years ago
- aee775a Eliminate static ctors from Statistics by Chris Lattner · 19 years ago
- a77f142 Added an automatic cast to "std::ostream*" etc. from OStream. We then can by Bill Wendling · 19 years ago
- 54c4ab8 Minor clean up. by Evan Cheng · 19 years ago
- 4c306ae Fix a long-standing spiller bug: by Evan Cheng · 19 years ago
- 78cb08d Move findTiedToSrcOperand to TargetInstrDescriptor. by Evan Cheng · 19 years ago
- bb4e6d4 Proper fix for PR1037: to determine is a VR is a modref, check 1) whether it is by Evan Cheng · 19 years ago
- e44aa81 Revision 1.83 causes PR1037. Reverted. by Reid Spencer · 19 years ago
- f3baad3 Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are by Bill Wendling · 19 years ago
- e312c15 MI keeps a ptr of TargetInstrDescriptor, use it. by Evan Cheng · 19 years ago
- 7074cbd getOperandConstraint returns -1 if the operand does have the specific constraint. This bug was causing excessive spills. by Evan Cheng · 19 years ago
- 700b873 Detemplatize the Statistic class. The only type it is instantiated with by Chris Lattner · 19 years ago
- 67fc141 Match TargetInstrInfo changes. by Evan Cheng · 19 years ago
- 9d46fcd More removal of std::cerr and DEBUG, replacing with DOUT instead. by Bill Wendling · 19 years ago
- 51733ed Fixed some spiller bugs exposed by the recent two-address code changes. Now by Evan Cheng · 19 years ago
- 93cdd14 Rename by Evan Cheng · 19 years ago
- d8697de Two-address instructions no longer have to be A := A op C. Now any pair of dest / src operands can be tied together. by Evan Cheng · 19 years ago
- c040e53 restore my previous patch, now that the X86 backend bug has been fixed: by Chris Lattner · 19 years ago
- c935741 Backing out Chris' last commit. It's breaking llvm-gcc bootstrapping. by Evan Cheng · 19 years ago
- 86a012a If we see a load from a stack slot into a physreg, consider it as providing by Chris Lattner · 19 years ago
- 13a5dcd Fix a long-standing wart in the code generator: two-address instruction lowering by Chris Lattner · 19 years ago
- 3d27be1 s|llvm/Support/Visibility.h|llvm/Support/Compiler.h| by Chris Lattner · 19 years ago
- bdf1210 Take advantage of the recent improvements to the liveintervals set (tracking by Chris Lattner · 19 years ago
- 04f2246 Added a check so that if we have two machine instructions in this form by Bill Wendling · 19 years ago
- 4b49c23 Eliminate data relocations by using NULL instead of global empty list. by Jim Laskey · 19 years ago
- c496b41 Reduce number of exported symbols by Andrew Lenharth · 19 years ago
- e097e6f Shave another 27K off libllvmgcc.dylib with visibility hidden by Chris Lattner · 19 years ago
- 10d6341 Move some methods out of MachineInstr into MachineOperand by Chris Lattner · 20 years ago
- fd0a547 Fix a latent bug that my spiller patch last week exposed: we were leaving by Chris Lattner · 20 years ago
- ab7dbe0 When promoting a load to a reg-reg copy, where the load was a previous by Chris Lattner · 20 years ago
- 4dee67c Remove previous patch, which wasn't quite right. by Chris Lattner · 20 years ago
- a656242 Remove temp. option -spiller-check-liveout, it didn't cause any failure nor performance regressions. by Evan Cheng · 20 years ago
- f71f0f2 Local spiller kills a store if the folded restore is turned into a copy. by Evan Cheng · 20 years ago
- 79c50d9 Mapping of physregs can make it so that the designated and input physregs are by Chris Lattner · 20 years ago
- 84e95d0 When we have a two-address instruction where the input cannot be clobbered by Chris Lattner · 20 years ago
- 7d01f95 Fix a bug that Evan exposed with some changes he's making, and that was by Chris Lattner · 20 years ago
- 28a0b8b Remove debugging printout :) by Chris Lattner · 20 years ago
- 525522e Refactor some code from being inline to being out in a new class with methods. by Chris Lattner · 20 years ago
- 57a004a Fix VC++ warning. by Jeff Cohen · 20 years ago
- c93403a Handle another case exposed on X86. by Chris Lattner · 20 years ago
- 71d20c4 Fix a nasty problem on two-address machines in the following situation: by Chris Lattner · 20 years ago
- 507a3a7 significantly simplify the VirtRegMap code by pulling the SpillSlotsAvailable by Chris Lattner · 20 years ago
- 3276ff7 Fix VC++ compilation error caused by using a std::map iterator variable to receive by Jeff Cohen · 20 years ago
- e18ef0d4 Remove move copies and dead stuff by not clobbering the result reg of a noop copy. by Chris Lattner · 20 years ago
- 774d4a1 Simplify some code by Chris Lattner · 20 years ago
- 1ef239a Add code that checks for noop copies, which triggers when either: by Chris Lattner · 20 years ago
- b7f24de Physregs may hold multiple stack slot values at the same time. Keep track by Chris Lattner · 20 years ago
- f3aef1b Fix a deficiency in the spiller that Evan noticed. In particular, consider by Chris Lattner · 20 years ago
- bb53acd Move isLoadFrom/StoreToStackSlot from MRegisterInfo to TargetInstrInfo,a far more logical place. Other methods should also be moved if anyoneis interested. :) by Chris Lattner · 20 years ago
- de02d77 Add explicit #includes of <iostream> by Chris Lattner · 20 years ago
- 0511055 Add an assertion, update DefInst even though no one uses it (dangling pointers by Chris Lattner · 20 years ago
- fabe55f Fix the LLC regressions on X86 last night. In particular, when undoing by Chris Lattner · 20 years ago
- 55149d7 Fix a bug in the local spiller, where we could take code like this: by Chris Lattner · 20 years ago
- 5a6199f Change this code ot pass register classes into the stack slot spiller/reloader by Chris Lattner · 20 years ago
- 2f838f2 Teach the local spiller to turn stack slot loads into register-register copies by Chris Lattner · 20 years ago
- 1410003 Use continue in the use-processing loop to make it clear what the early exits by Chris Lattner · 20 years ago
- 835702a Remove trailing whitespace by Misha Brukman · 21 years ago
- 6a6056e Make sure to notice that explicit physregs are used in the function by Chris Lattner · 21 years ago
- ae09d93 Update these register allocators to set the PhysRegUsed info in MachineFunction. by Chris Lattner · 21 years ago
- 0ad02bd Improve compatibility with acc by Chris Lattner · 21 years ago
- c8b07dd Clean up the MachineBasicBlock.h file, percolating #includes into this file. by Chris Lattner · 21 years ago
- 2152236 This patch fixes the nasty bug that caused 175.vpr to fail for X86 last night. by Chris Lattner · 21 years ago
- 9af0572 This patch adds and improves debugging output. No functionality changes. by Chris Lattner · 21 years ago
- 00db230 Do not repeat the map lookup by Chris Lattner · 21 years ago
- 1905ae6 When a virtual register is folded into an instruction, keep track of whether by Chris Lattner · 21 years ago
- 04f52079 Add a simple little improvement to the local spiller to keep track of stores by Chris Lattner · 21 years ago
- d3b1f6c Substantially revamp the local spiller, causing it to actually improve the by Chris Lattner · 21 years ago
- b5b4a2f Use more efficient map operations. Fix a bug that would affect hypothetical by Chris Lattner · 21 years ago
- 55c1402 There is no need to call MachineInstr::print directly, just send the MI& to an ostream. by Chris Lattner · 21 years ago