325 Commits

Author SHA1 Message Date
Chris Lattner
bd93ec9e5f Refactor code into Assembly & bytecode libraries
llvm-svn: 903
2001-10-18 20:31:54 +00:00
Chris Lattner
aaf97a123b initial checkin
llvm-svn: 902
2001-10-18 20:31:42 +00:00
Chris Lattner
ffe8f6e43b move llvm/Transforms/Pass.h to the top level llvm/Pass.h file
llvm-svn: 901
2001-10-18 20:19:09 +00:00
Chris Lattner
ff23ec4b41 Initial Checkin
llvm-svn: 896
2001-10-18 20:05:30 +00:00
Chris Lattner
e4bae737ff Pull bytecode writing out of Module writer pass. Prepare to move to seperate file
llvm-svn: 895
2001-10-18 20:05:07 +00:00
Chris Lattner
f11fb026c8 Add operator[] accessors
llvm-svn: 894
2001-10-18 20:04:40 +00:00
Vikram S. Adve
46310c1fed Add option to print per module instead of per method, so that
global declarations are also printed.

llvm-svn: 891
2001-10-18 18:13:49 +00:00
Vikram S. Adve
ec2a0b15bf Add option to print as bytecode instead of assembly.
llvm-svn: 887
2001-10-18 13:47:49 +00:00
Chris Lattner
568aa25a33 Convert to new simpler Pass structure
Componentize better

llvm-svn: 879
2001-10-18 05:22:27 +00:00
Chris Lattner
5be361613d Convert to new simpler Pass structure
llvm-svn: 878
2001-10-18 05:22:15 +00:00
Chris Lattner
931b135143 Convert to new simpler pass structure
llvm-svn: 877
2001-10-18 05:21:56 +00:00
Chris Lattner
806b0d53d8 Simplify Pass by removing silly subclasses
Fix an iterator problem

llvm-svn: 876
2001-10-18 05:20:53 +00:00
Chris Lattner
bcf4e18b12 Fix minor bug, update comments
llvm-svn: 875
2001-10-18 01:49:48 +00:00
Chris Lattner
d29a604bc9 Pass's return true if they make a modification, not if they fail
llvm-svn: 872
2001-10-18 01:32:17 +00:00
Chris Lattner
a913b68b67 Convert optimizations to use the Pass infrastructure
llvm-svn: 871
2001-10-18 01:31:58 +00:00
Vikram S. Adve
b66fc8ac17 Added virtual function to generate an instruction sequence to
load a constant into a register.

llvm-svn: 862
2001-10-18 00:02:06 +00:00
Vikram S. Adve
c83118d53f 1. Add a bottom-up pass on BURG trees that is used to fix constant operands.
Needs to be bottom up because constant values may be forward-substituted
   to their uses (i.e., into the parent in the BURG tree).
2. Move most of the constant-fixup code into machine-indepedent file
   InstrSelectionSupport.cpp.

llvm-svn: 860
2001-10-17 23:59:09 +00:00
Vikram S. Adve
aff0c3b0f5 Remove extra assert in dyn_cast_or_null.
llvm-svn: 856
2001-10-17 22:39:50 +00:00
Ruchira Sasanka
6be2863ed7 added initializing regNum to -1 in both constructors of MachineOperand
llvm-svn: 851
2001-10-16 16:36:34 +00:00
Ruchira Sasanka
26ab9c8e61 Added support for caller saving
llvm-svn: 847
2001-10-16 01:23:19 +00:00
Chris Lattner
be66ee81bd Print Debug Code to stderr instead of stdout so that it doesn't mess up the assembly output
llvm-svn: 841
2001-10-15 18:30:06 +00:00
Chris Lattner
463b90cb78 ConcretePass should not be a templated class!
llvm-svn: 838
2001-10-15 17:47:13 +00:00
Chris Lattner
9bfad5b7b1 Add new Pass infrastructure and some examples
llvm-svn: 836
2001-10-15 17:31:51 +00:00
Chris Lattner
9e0f07c207 Convert to use Pass infrastructure
llvm-svn: 834
2001-10-15 17:30:18 +00:00
Chris Lattner
6a4db15e88 File moved to: llvm/Transforms/HoistPHIConstants.h
llvm-svn: 833
2001-10-15 17:30:06 +00:00
Ruchira Sasanka
bd3efa900e --changed Sugesting colors for method calls/return values etc.
llvm-svn: 829
2001-10-15 16:23:48 +00:00
Ruchira Sasanka
54051b75a7 fixed a coalscing bug
llvm-svn: 828
2001-10-15 16:22:44 +00:00
Chris Lattner
eba2b7cf61 Be const correct
llvm-svn: 826
2001-10-15 15:54:43 +00:00
Chris Lattner
d9c11e528c Add cast_or_null & dyn_cast_or_null
llvm-svn: 824
2001-10-15 13:41:37 +00:00
Chris Lattner
fd1ab08cba Rename ConstPoolPointerReference to ConstPoolPointerRef - My fingers get tired typing that much
llvm-svn: 822
2001-10-15 13:21:42 +00:00
Chris Lattner
b66d7f5416 Improve error messages on assertion failure.
llvm-svn: 821
2001-10-15 13:13:32 +00:00
Chris Lattner
657954e39b *** empty log message ***
llvm-svn: 813
2001-10-14 23:34:12 +00:00
Chris Lattner
c86be70de5 Update comment, remove misleading method
llvm-svn: 806
2001-10-14 23:26:24 +00:00
Chris Lattner
7de225b35d Initializers are not const even if the GV is.
llvm-svn: 805
2001-10-14 23:24:46 +00:00
Vikram S. Adve
ebdf1737c4 Cast NULL when requested.
llvm-svn: 803
2001-10-14 23:21:06 +00:00
Vikram S. Adve
c46b4eb5fe Added getEntryNode() and getExitNode() functions.
The latter are actually bogus and will be fixed by me soon.

llvm-svn: 802
2001-10-14 23:20:44 +00:00
Vikram S. Adve
a62d1703a1 Insert code to trace values at basic block and method exits.
llvm-svn: 801
2001-10-14 23:19:02 +00:00
Vikram S. Adve
8a6626476e Added routine to create a char array for a string.
llvm-svn: 798
2001-10-14 23:16:27 +00:00
Chris Lattner
42433c96b6 Use the instruction.def file to remain up to date with future instruction
changes

llvm-svn: 792
2001-10-14 17:24:50 +00:00
Chris Lattner
a23671c6ba New file to define instructions...
llvm-svn: 791
2001-10-14 17:24:33 +00:00
Chris Lattner
b789255b4e New module linking functionality prototype
llvm-svn: 789
2001-10-13 16:57:49 +00:00
Chris Lattner
d4a327ff93 Dang, I screwed up the merge. This should be better
llvm-svn: 785
2001-10-13 07:18:40 +00:00
Chris Lattner
010b35c757 Fix filename in comment
llvm-svn: 751
2001-10-13 06:32:42 +00:00
Chris Lattner
7ca4d97de9 Better linux support. This file still sucks
llvm-svn: 750
2001-10-13 06:31:55 +00:00
Chris Lattner
217ae5645d Fix broken #endif
llvm-svn: 749
2001-10-13 06:31:00 +00:00
Chris Lattner
815755f9f9 not is a keyword in Ansi C++. Avoid it
llvm-svn: 748
2001-10-13 06:30:39 +00:00
Chris Lattner
a4d1133109 Clean up initializers for GCC 2.96
llvm-svn: 747
2001-10-13 06:30:10 +00:00
Chris Lattner
c6085d8351 Remove exception specification. Only slows code down.
llvm-svn: 746
2001-10-13 06:25:30 +00:00
Chris Lattner
99189a2ebf Changes to compile with GCC 2.96
llvm-svn: 745
2001-10-13 06:25:03 +00:00
Chris Lattner
1e90c0f0c8 Add comment indicating semantics of indirect calls
llvm-svn: 744
2001-10-13 06:24:35 +00:00