- Jul 06, 2004
-
-
Alkis Evlogimenos authored
classes: just ignore that move. Thanks to Vladimir Prus who found the bug! llvm-svn: 14644
-
- Jul 02, 2004
-
-
Chris Lattner authored
don't exist, we don't have to pretend to handle them. llvm-svn: 14567
-
- Jul 01, 2004
-
-
Chris Lattner authored
use them instead of a local LiveVariables numbering llvm-svn: 14523
-
Chris Lattner authored
map. llvm-svn: 14518
-
- Jun 29, 2004
-
-
Chris Lattner authored
llvm-svn: 14475
-
Chris Lattner authored
llvm-svn: 14474
-
- Jun 25, 2004
-
-
Tanya Lattner authored
Made a fix so that you can print out MachineInstrs that belong to a MachineBasicBlock that is not yet attached to a MachineFunction. This change includes changing the third operand (TargetMachine) to a pointer for the MachineInstr::print function. llvm-svn: 14389
-
- Jun 21, 2004
-
-
Chris Lattner authored
existing llvm::Interval class. Patch contributed by Vladimir Prus! http://mail.cs.uiuc.edu/pipermail/llvmbugs/2004-June/000710.html llvm-svn: 14281
-
- Jun 02, 2004
-
-
Chris Lattner authored
llvm-svn: 13956
-
- May 30, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 13910
-
Alkis Evlogimenos authored
spills. This allows for more flexibility when allocating registers for spill code. llvm-svn: 13907
-
- May 29, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 13892
-
- May 08, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 13416
-
- May 06, 2004
-
-
Chris Lattner authored
workaround, use the C HUGE_VAL macro instead. llvm-svn: 13377
-
- May 01, 2004
-
-
Chris Lattner authored
llvm-svn: 13302
-
- Apr 12, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 12872
-
Alkis Evlogimenos authored
llvm-svn: 12869
-
Alkis Evlogimenos authored
llvm-svn: 12866
-
- Apr 09, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 12791
-
- Mar 14, 2004
-
-
Alkis Evlogimenos authored
instruction to make the API more flexible. llvm-svn: 12386
-
- Mar 01, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 12058
-
- Feb 26, 2004
-
-
Alkis Evlogimenos authored
MRegisterInfo::is{Physical,Virtual}Register. Apply appropriate fixes to relevant files. llvm-svn: 11882
-
- Feb 23, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11721
-
Alkis Evlogimenos authored
llvm-svn: 11719
-
- Feb 22, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11704
-
Alkis Evlogimenos authored
Also make it less aggressive as the current implementation breaks in some cases. llvm-svn: 11696
-
- Feb 21, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11687
-
- Feb 20, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11676
-
Alkis Evlogimenos authored
llvm-svn: 11675
-
Alkis Evlogimenos authored
llvm-svn: 11674
-
Alkis Evlogimenos authored
1. LiveIntervals now implement a 4 slot per instruction model. Load, Use, Def and a Store slot. This is required in order to correctly represent caller saved register clobbering on function calls, register reuse in the same instruction (def resues last use) and also spill code added later by the allocator. The previous representation (2 slots per instruction) was insufficient and as a result was causing subtle bugs. 2. Fixes in spill code generation. This was the major cause of failures in the test suite. 3. Linear scan now has core support for folding memory operands. This is untested and not enabled (the live interval update function does not attempt to fold loads/stores in instructions). 4. Lots of improvements in the debugging output of both live intervals and linear scan. Give it a try... it is beautiful :-) In summary the above fixes all the issues with the recent reserved register elimination changes and get the allocator very close to the next big step: folding memory operands. llvm-svn: 11654
-
- Feb 18, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11575
-
Alkis Evlogimenos authored
llvm-svn: 11574
-
- Feb 17, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11516
-
- Feb 15, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11476
-
- Feb 14, 2004
-
-
Alkis Evlogimenos authored
std::numeric_limits<float>::max() for weighting preallocated intervals. llvm-svn: 11427
-
- Feb 13, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11393
-
- Feb 12, 2004
-
-
Alkis Evlogimenos authored
ilist of MachineInstr objects. This allows constant time removal and insertion of MachineInstr instances from anywhere in each MachineBasicBlock. It also allows for constant time splicing of MachineInstrs into or out of MachineBasicBlocks. llvm-svn: 11340
-
- Feb 10, 2004
-
-
Chris Lattner authored
llvm-svn: 11283
-
- Feb 05, 2004
-
-
Alkis Evlogimenos authored
slots each. As a concequence they get numbered as 0, 2, 4 and so on. The first slot is used for operand uses and the second for defs. Here's an example: 0: A = ... 2: B = ... 4: C = A + B ;; last use of A The live intervals should look like: A = [1, 5) B = [3, x) C = [5, y) llvm-svn: 11141
-