31724 Commits

Author SHA1 Message Date
Chris Lattner
92f1951e5b Convert to new simpler pass structure
llvm-svn: 877
2001-10-18 05:21:56 +00:00
Chris Lattner
e3ad91c7ae Simplify Pass by removing silly subclasses
Fix an iterator problem

llvm-svn: 876
2001-10-18 05:20:53 +00:00
Chris Lattner
487374cffb Fix minor bug, update comments
llvm-svn: 875
2001-10-18 01:49:48 +00:00
Chris Lattner
ee6e199f0e Change Sources specifier to ExtraSources
llvm-svn: 874
2001-10-18 01:48:09 +00:00
Chris Lattner
5398a6eb6c Convert optimizations to the pass infrastructure
llvm-svn: 873
2001-10-18 01:32:34 +00:00
Chris Lattner
f71b827441 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
8874d31d91 Convert optimizations to use the Pass infrastructure
llvm-svn: 871
2001-10-18 01:31:58 +00:00
Chris Lattner
5b6026a13a * Passes return true if they change something, not if they fail
* Convert opt to use Pass's and convert optimizations to pass structure

llvm-svn: 870
2001-10-18 01:31:43 +00:00
Chris Lattner
2fa0dabf9f Passes return true if they change something, not if they fail
llvm-svn: 869
2001-10-18 01:31:22 +00:00
Vikram S. Adve
6c697526bf 1. Move most of the constant-fixup code into machine-independent file
InstrSelectionSupport.cpp.  It now happens in a bottom-up pass on
   each BURG tree after the original top-down selection pass on the tree.
2. Handle global values as constants (viz., constant addresses).

llvm-svn: 868
2001-10-18 00:26:20 +00:00
Vikram S. Adve
595747054d Reverse previous change.
llvm-svn: 867
2001-10-18 00:23:32 +00:00
Vikram S. Adve
aad04c97e8 Generate assembly code for testcodegen.
llvm-svn: 866
2001-10-18 00:22:14 +00:00
Vikram S. Adve
757a67d389 Added several cases where a constant must be forwarded into a use.
llvm-svn: 865
2001-10-18 00:22:02 +00:00
Vikram S. Adve
cc776df39c Sparc-specific code shared between local files.
llvm-svn: 864
2001-10-18 00:03:20 +00:00
Vikram S. Adve
01e57a481e Moved implementation of class UltraSparcInstrInfo to SparcInstrInfo.cpp.
llvm-svn: 863
2001-10-18 00:02:32 +00:00
Vikram S. Adve
505130cb30 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
4cc2b3b155 Moved implementation of class UltraSparcInstrInfo here.
llvm-svn: 861
2001-10-18 00:01:48 +00:00
Vikram S. Adve
af854b59c2 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
6d19dc9080 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: 859
2001-10-17 23:57:50 +00:00
Vikram S. Adve
ad97e4ed84 Separate VM instruction that generates the instructions that compute a value
from the value itself (the one causing an edge) because the latter may be
a temporary used within the instruction sequence for the VM instruction.

llvm-svn: 858
2001-10-17 23:55:16 +00:00
Vikram S. Adve
59cbb6498c *** empty log message ***
llvm-svn: 857
2001-10-17 23:53:16 +00:00
Vikram S. Adve
21db313d7d Remove extra assert in dyn_cast_or_null.
llvm-svn: 856
2001-10-17 22:39:50 +00:00
Vikram S. Adve
72c1d99922 Disable codgen test for calltest.ll.
llvm-svn: 855
2001-10-17 20:14:34 +00:00
Vikram S. Adve
6b4ba47f31 Only list automatically generated .cpp files.
llvm-svn: 854
2001-10-17 12:34:26 +00:00
Vikram S. Adve
bd9cae260d Allow only extra Source files to be listed in a local Makefile.
Needed for automatically generated .cpp files.

llvm-svn: 853
2001-10-17 12:33:55 +00:00
Chris Lattner
322e49aa36 Simplify some code
Remove Method special case
Fix bug exposed by this testcase:

implementation

void "PtrFunc2"()
begin
bb1:
        %reg = add int(int)* null, null
        add int (int)* %reg, null
        ret void
end

llvm-svn: 852
2001-10-16 19:54:17 +00:00
Ruchira Sasanka
f42b65d898 added initializing regNum to -1 in both constructors of MachineOperand
llvm-svn: 851
2001-10-16 16:36:34 +00:00
Ruchira Sasanka
7d23a2bee9 changed debugg message printing - no change to useful code
llvm-svn: 850
2001-10-16 16:34:44 +00:00
Ruchira Sasanka
3d878424d2 No major change - commented some debug code
llvm-svn: 849
2001-10-16 01:33:55 +00:00
Ruchira Sasanka
cc91b21fe1 No major change - added some comments
llvm-svn: 848
2001-10-16 01:25:05 +00:00
Ruchira Sasanka
5b8971f418 Added support for caller saving
llvm-svn: 847
2001-10-16 01:23:19 +00:00
Chris Lattner
914fae18c2 Add rule to build executables
llvm-svn: 846
2001-10-15 20:08:19 +00:00
Chris Lattner
3294e7c14b Emit the proper .type declarations to tell the debugger what a function is
llvm-svn: 845
2001-10-15 19:34:17 +00:00
Chris Lattner
77d2c22d94 Handle abnormal jmpl syntax correctly
llvm-svn: 844
2001-10-15 19:21:31 +00:00
Chris Lattner
67beacef4f Implement ulong & long support
llvm-svn: 843
2001-10-15 19:18:26 +00:00
Chris Lattner
0abbdbf27c Make main do some simple work without requiring main arguments to be happy
llvm-svn: 842
2001-10-15 19:18:01 +00:00
Chris Lattner
24872c8838 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
f3f1e452ea Output to cerr rather than cout so that debug info doesn't mess up assembly generation
llvm-svn: 840
2001-10-15 18:15:27 +00:00
Chris Lattner
66fc9e73ed Compile with v9 extensions
llvm-svn: 839
2001-10-15 17:55:35 +00:00
Chris Lattner
8761d50df7 ConcretePass should not be a templated class!
llvm-svn: 838
2001-10-15 17:47:13 +00:00
Chris Lattner
d0c15405af Minor cleanups
llvm-svn: 837
2001-10-15 17:41:24 +00:00
Chris Lattner
1bb5f8e4ee Add new Pass infrastructure and some examples
llvm-svn: 836
2001-10-15 17:31:51 +00:00
Chris Lattner
97fd6c44db Use the new Pass infrastructure to clean up llc
llvm-svn: 835
2001-10-15 17:30:47 +00:00
Chris Lattner
6991ab1e5e Convert to use Pass infrastructure
llvm-svn: 834
2001-10-15 17:30:18 +00:00
Chris Lattner
578e83df34 File moved to: llvm/Transforms/HoistPHIConstants.h
llvm-svn: 833
2001-10-15 17:30:06 +00:00
Ruchira Sasanka
82605b239c --added support for implicit operands
llvm-svn: 832
2001-10-15 16:58:50 +00:00
Ruchira Sasanka
2a6cc8300d updated suggesting/coloring of call & return args & implicit operands.
Changed added instr to a deque (from a vector)

llvm-svn: 831
2001-10-15 16:26:38 +00:00
Ruchira Sasanka
086bf0fe3a updated suggesting/coloring of call & return args & implicit operands
llvm-svn: 830
2001-10-15 16:25:28 +00:00
Ruchira Sasanka
48972e033b --changed Sugesting colors for method calls/return values etc.
llvm-svn: 829
2001-10-15 16:23:48 +00:00
Ruchira Sasanka
33535773cb fixed a coalscing bug
llvm-svn: 828
2001-10-15 16:22:44 +00:00