Commit Graph

1426 Commits

Author SHA1 Message Date
Vikram S. Adve
b73a1c0085 Unify all constant evaluations that depend on register size
in TargetInstrInfo::ConvertConstantToIntType.

llvm-svn: 7398
2003-07-29 20:30:20 +00:00
Vikram S. Adve
e02f966e3e Moved insertCallerSavingCode() to PhyRegAlloc and
moved isRegVolatile and modifiedByCall here: they are all
machine independent.  Remove all uses of PhyRegAlloc.

llvm-svn: 7387
2003-07-29 19:41:23 +00:00
Vikram S. Adve
37047489b7 Don't require a BB to look-up live variables, unless they may need to
be recomputed.

llvm-svn: 7384
2003-07-29 19:32:04 +00:00
Chris Lattner
9b62a24451 Fix copy and paste-o
llvm-svn: 7378
2003-07-29 05:15:44 +00:00
Chris Lattner
396841f185 Move value type enums to CodeGen/ValueTypes.h
llvm-svn: 7376
2003-07-29 05:13:34 +00:00
Chris Lattner
337787e85b Define target value types in a form usable by target-independent code
llvm-svn: 7375
2003-07-29 05:13:09 +00:00
Chris Lattner
f4b6e59dfa Add alpha intrinsics, contributed by Rahul Joshi
llvm-svn: 7372
2003-07-28 21:18:21 +00:00
Misha Brukman
d36940e9ec Lined things up in a more aesthetically pleasing way.
llvm-svn: 7365
2003-07-28 19:17:53 +00:00
Misha Brukman
88c077722e Removed extra parenthesis and fixed spelling.
llvm-svn: 7359
2003-07-28 16:53:28 +00:00
Tanya Lattner
8a8e6e6ed3 Need to include <string> to fix compile error on Sun
llvm-svn: 7358
2003-07-28 16:42:33 +00:00
Chris Lattner
a522d0ebf9 Code generation phases are not allowed to modify the LLVM representation.
Because of this, we'll make the MBB->BB mapping const as it should be

llvm-svn: 7351
2003-07-26 23:30:37 +00:00
Chris Lattner
e99fa3f42e Whoops, this one was needed
llvm-svn: 7346
2003-07-26 23:18:11 +00:00
Chris Lattner
9224631d6b Remove extraneous #includes
llvm-svn: 7341
2003-07-26 23:00:29 +00:00
Chris Lattner
2bf24be50e Remove #includes
llvm-svn: 7339
2003-07-26 22:56:46 +00:00
Vikram S. Adve
73f410f53f Change the way unused regs. are marked and found to consider regType
info (since multiple reg types may share the same reg class).
Remove machine-specific regalloc. methods that are no longer needed.

llvm-svn: 7328
2003-07-25 21:01:43 +00:00
Vikram S. Adve
19309fca4b Add an assertion.
llvm-svn: 7326
2003-07-25 20:58:57 +00:00
Brian Gaeke
2742a70083 Forward-declare class Module to make the header file self-contained.
llvm-svn: 7319
2003-07-25 20:20:53 +00:00
Chris Lattner
d68c05b473 More cassert inclusion for GCC 3.3
llvm-svn: 7318
2003-07-25 18:06:53 +00:00
Chris Lattner
be4a5081d1 #include <cassert> as necessary...
llvm-svn: 7315
2003-07-25 17:58:41 +00:00
Chris Lattner
56c01f1a1e Remove inline declarations that GCC 3.3 doesn't like without a body
llvm-svn: 7312
2003-07-25 17:39:33 +00:00
Chris Lattner
9390472890 Use the C++ <cassert> header, not the C <assert.h> header
llvm-svn: 7310
2003-07-25 17:34:17 +00:00
Brian Gaeke
d9979a5529 Cleanups:
Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator.
 Make Count an unsigned int, and use utostr().
 Don't name parameters things that start with underscore.
Mangler.h: All of the above, and also: Add Emacs mode-line.  Include <set>.

llvm-svn: 7301
2003-07-24 21:37:57 +00:00
Brian Gaeke
e5ae59ad05 Factor out name-mangling from X86/Printer, which is derived from CWriter,
into this new support class.

llvm-svn: 7300
2003-07-24 20:20:58 +00:00
Chris Lattner
04652336b2 Add support for ~ operator on constants
llvm-svn: 7258
2003-07-23 17:21:17 +00:00
Chris Lattner
1351c304dc Remove redundant const qualifiers from cast<> expressions
llvm-svn: 7253
2003-07-23 15:30:06 +00:00
Chris Lattner
913c260d94 Add more doxygen comments, add new ConstantInt::getRawValue method
llvm-svn: 7244
2003-07-23 14:49:06 +00:00
Anand Shukla
351c0f6342 Added special consideration for instrumentation strategy
llvm-svn: 7208
2003-07-20 15:39:30 +00:00
Vikram S. Adve
2d617afa1a (1) Added DSGraph::cloneReachableSubgraph and DSGraph::cloneReachableNodes
to clone the subgraph reachable from a set of root nodes, into the
    current graph, merging the global nodes into those in the current graph.
(2) Added DSGraph::updateFromGlobalGraph() to rematerialize nodes from the
    globals graph into the current graph in both BU and TD passes.
(3) Added hash_set<const GlobalValue*> InlinedGlobals: a set of globals to
    track which globals have been inlined into the current graph from
    callers or callees.  In the TD pass, such globals are up-to-date and
    do not need to be rematerialized from the GlobalsGraph.
(4) Added StripIncompleteBit/KeepIncompleteBit to remove incomplete bit
    when cloning nodes into the globals graph.

llvm-svn: 7190
2003-07-16 21:45:15 +00:00
Misha Brukman
5de3e14206 The word separate' only has one e'.
llvm-svn: 7173
2003-07-14 17:20:40 +00:00
Vikram S. Adve
d8b600cb85 Values stored in CallArgsDescriptor cannot be const.
llvm-svn: 7156
2003-07-10 19:46:15 +00:00
Vikram S. Adve
6aa3abf7fa Change interface to MachineInstr::substituteValue to specify more precisely
which args can be substituted: defsOnly, defsAndUses or usesOnly.

llvm-svn: 7154
2003-07-10 19:45:07 +00:00
Chris Lattner
727a2aaf1e INCLUDE_PARENT_GRAPH is required
llvm-svn: 7089
2003-07-02 23:57:21 +00:00
Chris Lattner
05ead58250 Remove dead method
llvm-svn: 7083
2003-07-02 23:43:06 +00:00
Chris Lattner
fd4af836c2 Add new methods
llvm-svn: 7057
2003-07-02 04:37:00 +00:00
Chris Lattner
9e36c26ed9 Disable the parent graph code when not compiled in DEBUG mode
llvm-svn: 7056
2003-07-02 04:33:55 +00:00
Vikram S. Adve
e133e7d852 Leak fix: delete old objects before reallocation in an assignment operator!
llvm-svn: 7055
2003-07-02 01:25:44 +00:00
Chris Lattner
a80bdacdce TD pass keeps track of which functions have complete arguments
llvm-svn: 7048
2003-07-01 21:12:10 +00:00
Chris Lattner
215aabe53f Add new operator= impl
llvm-svn: 7047
2003-07-01 21:11:59 +00:00
Chris Lattner
c5f892c867 Ok, I'm a moron. Fixed now
llvm-svn: 7035
2003-07-01 17:15:11 +00:00
Chris Lattner
c09d40c234 Fix major problem that was causing all kinds of nasty foldings
llvm-svn: 7034
2003-07-01 17:10:50 +00:00
Chris Lattner
e0dbd43e2f Add new methods to BUDS for keeping track of a precise call graph
llvm-svn: 7028
2003-07-01 16:27:15 +00:00
John Criswell
258dfc0319 Merged in autoconf branch. This provides configuration via the autoconf
system.

llvm-svn: 7014
2003-06-30 21:59:07 +00:00
Chris Lattner
cb32be085b Add new method
llvm-svn: 7007
2003-06-30 05:57:30 +00:00
Chris Lattner
6de58997b5 Be more const correct
llvm-svn: 7004
2003-06-30 05:27:05 +00:00
Chris Lattner
8ef5ebb1d7 Constness changes
llvm-svn: 7002
2003-06-30 05:10:09 +00:00
Chris Lattner
e6df85809f Substantial revamp: DSGraphs now may contain the graphs for multiple functions
in the same graph

llvm-svn: 6991
2003-06-30 03:14:23 +00:00
Chris Lattner
e0e0686413 Add argument
llvm-svn: 6990
2003-06-30 03:13:36 +00:00
Chris Lattner
ff71b43ac7 Remove prototype for dead method
llvm-svn: 6989
2003-06-30 03:13:28 +00:00
Chris Lattner
4b3d2c7c90 Add support for gathering sets of must aliases
llvm-svn: 6971
2003-06-29 00:23:11 +00:00
Chris Lattner
c059f6cce9 Add new DSGraph::ScalarMapTy typedef to avoid pulling representation issues
into callers of getScalarMap

llvm-svn: 6944
2003-06-28 21:57:13 +00:00