Commit Graph

1610 Commits

Author SHA1 Message Date
Chris Lattner
cacf462915 Initial checkin of SelectionDAG header file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7716 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-11 14:56:26 +00:00
Misha Brukman
35d402fbba Remove references to `bugpoint' from the now-generic system utilities.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7693 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 21:33:33 +00:00
Misha Brukman
3d1b0c7331 Moved removeFile() and getUniqueFilename() into FileUtilities.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7691 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 21:28:50 +00:00
Sumant Kowshik
edea6d646b Added a flag which is set when all data structures are not pool allocated
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7660 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 04:37:52 +00:00
Chris Lattner
3314d8d656 There was no reason for these to be bit-fields, they just need to be unique.
Also, add an isVoid item


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7659 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 00:17:00 +00:00
Chris Lattner
c232818432 Add a bunch of new Alpha Intrinsics for Rahul Joshi
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7646 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-06 20:08:25 +00:00
Chris Lattner
5e8b77e375 Completely eliminate the per-machine-instruction regsUsed set.
This substantially shrinks the size of each machine instruction, which should
make allocation faster and the cache footprint of the machine code lighter.

Here are some timings for code generation of the larger benchmarks we have.
This are timings of code generation phases of the X86 JIT, when compiled in
debug mode:

		Before	After	Diff
164.gzip:
  InstSel	0.0878	0.0722	-21.6%
  RegAlloc	0.2031	0.1757	-15.6%
  TOTAL		0.5585	0.4999	-11.7%
Ptrdist-bc:
  InstSel	0.0878	0.0722	-21.6%
  RegAlloc	0.2070	0.1933	- 7.1%
  TOTAL		0.6972	0.6464	- 7.9%
197.parser:
  InstSel	0.2148	0.2148	- 0.0%
  RegAlloc	0.4941	0.4277	-15.5%
  TOTAL		1.3749	1.2851	- 7.0%
175.vpr:
  InstSel	0.2519	0.2109	-19.4%
  RegAlloc	0.5976	0.5663	- 5.5%
  TOTAL		1.6933	1.6347	- 3.5%
254.gap:
  InstSel	1.1328	0.9921	-14.2%
  RegAlloc	2.6933	2.4804	- 8.6%
  TOTAL		7.7871	7.2499	- 7.4%


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7622 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 22:39:13 +00:00
Chris Lattner
610234d5c9 Do not insert physical regsiters into the regsUsed set
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7617 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 21:55:20 +00:00
Chris Lattner
8366b38ff7 Add a comment to the method decl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7609 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 18:38:16 +00:00
Chris Lattner
e057ca61b1 Remove unused method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7608 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 17:09:08 +00:00
Sumant Kowshik
9f2ac19f8e Added declaration of mergeInGlobalsGraph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7607 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 17:06:18 +00:00
Chris Lattner
a2dd745613 All callers of these methods actually wanted them to preserve the flags,
so get rid of the def/use parameters that were getting passed in.

**** This now changes the semantics of these methods to preserve the flags,
     not clobber them!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7602 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 16:58:46 +00:00
Sumant Kowshik
3d9c001af0 Added the declaration of InlineIndirectCalls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7601 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-05 16:56:59 +00:00
Chris Lattner
9ca5a2a33e The NOOP instruction is no longer needed. Instead, use the
TargetInstrInfo::isNOPinstr method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7530 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-03 18:52:15 +00:00
Chris Lattner
d265d03568 CVS, please don't tell us that we have a new config.h file, everyone knows that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7527 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-03 18:31:38 +00:00
Chris Lattner
2dd93edfc2 Move debugging support out of Statistic.h into Debug.h, implement the new DEBUG_TYPE facilities
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7490 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 22:12:40 +00:00
Chris Lattner
aeac00ed53 Including statistics into an anonymous namespace that gets #included into
every file is a bad idea.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7489 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 22:12:07 +00:00
Chris Lattner
4181a4fb4f New file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7482 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 20:28:55 +00:00
Chris Lattner
9ef719afac This file doesn't need this include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7479 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 19:16:18 +00:00
Tanya Lattner
be08bb399a Renamed trapping instruction function to be more consistent with other functions in the file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7448 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 05:08:02 +00:00
Tanya Lattner
741bb0019d Added function to determine if an Instruction may trap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7442 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:05:50 +00:00
Chris Lattner
92988ecdb6 Code generation passes don't need access to raw LLVM types, this method is unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7412 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 05:29:45 +00:00
Vikram S. Adve
588668d468 Unify all constant evaluations that depend on register size
in TargetInstrInfo::ConvertConstantToIntType.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7398 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 20:30:20 +00:00
Vikram S. Adve
ceb7d2f4f8 Moved insertCallerSavingCode() to PhyRegAlloc and
moved isRegVolatile and modifiedByCall here: they are all
machine independent.  Remove all uses of PhyRegAlloc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7387 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 19:41:23 +00:00
Vikram S. Adve
0eb7f745ed Don't require a BB to look-up live variables, unless they may need to
be recomputed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7384 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 19:32:04 +00:00
John Criswell
c78022ed07 Enable JIT when the platform supports it.
Select /localhome/$USER when it exists.
Fix the checks for bidirectional and forward iterators so that they work with
version of GCC prior to 3.x.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7383 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 19:11:58 +00:00
Chris Lattner
38dbde19cc Fix copy and paste-o
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7378 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 05:15:44 +00:00
Chris Lattner
5d7407cbef Move value type enums to CodeGen/ValueTypes.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7376 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 05:13:34 +00:00
Chris Lattner
ad5e1f8153 Define target value types in a form usable by target-independent code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7375 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 05:13:09 +00:00
Chris Lattner
f4836c754a Add alpha intrinsics, contributed by Rahul Joshi
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7372 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-28 21:18:21 +00:00
Misha Brukman
90a24c71a2 Lined things up in a more aesthetically pleasing way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7365 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-28 19:17:53 +00:00
Misha Brukman
686e65fb65 Removed extra parenthesis and fixed spelling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7359 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-28 16:53:28 +00:00
Tanya Lattner
ebb20c51fa Need to include <string> to fix compile error on Sun
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7358 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-28 16:42:33 +00:00
Chris Lattner
1194e95019 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7351 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-26 23:30:37 +00:00
Chris Lattner
70534ee581 Whoops, this one was needed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7346 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-26 23:18:11 +00:00
Chris Lattner
bae47e5691 Remove extraneous #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7341 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-26 23:00:29 +00:00
Chris Lattner
869ff9e7be Remove #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7339 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-26 22:56:46 +00:00
Vikram S. Adve
523eb3f768 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7328 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 21:01:43 +00:00
Vikram S. Adve
b1e6f05110 Add an assertion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7326 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 20:58:57 +00:00
Brian Gaeke
00fee61672 Forward-declare class Module to make the header file self-contained.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7319 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 20:20:53 +00:00
Chris Lattner
2e99791a1e More cassert inclusion for GCC 3.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7318 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 18:06:53 +00:00
Chris Lattner
be67780f31 #include <cassert> as necessary...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7315 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:58:41 +00:00
Chris Lattner
02a31a5af6 Fix another accessibility problem illuminated by GCC 3.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7314 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:49:28 +00:00
Chris Lattner
d091d85c15 Fix visibility problem exposed by GCC 3.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7313 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:46:25 +00:00
Chris Lattner
0192e36cc7 Remove inline declarations that GCC 3.3 doesn't like without a body
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7312 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:39:33 +00:00
Chris Lattner
ceef97a535 Regardless of whether C provides assert.h, C++ source can always include
<cassert>, making this header unneeded.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7311 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:35:03 +00:00
Chris Lattner
d957518b51 Use the C++ <cassert> header, not the C <assert.h> header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7310 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:34:17 +00:00
Chris Lattner
b1512d2a7a This header works with GCC 3.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7309 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:33:45 +00:00
Chris Lattner
a44a4cd055 Add includes of assert
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7307 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:23:27 +00:00
Chris Lattner
32862da7c7 Fix accessibility problems GCC 3.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7306 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 17:23:13 +00:00
Chris Lattner
ab63bd15f5 Add assert.h include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7305 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 16:47:07 +00:00
Chris Lattner
9c37f9c7f2 Convert to C++ style comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7304 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 15:08:08 +00:00
Vikram S. Adve
7f90b520b4 Include vector into these two files to ensure that specializations like
stl_bvector.h are correctly included into *anything* that includes hash_map
or hash_set.  ext/hash_map includes stl_vector.h directly and leaves
out the specializations, causing truly nasty bugs due to inconsistent
versions of vector<> being used for vector<bool> in different files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7303 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-25 14:06:13 +00:00
Brian Gaeke
4166445b7c 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>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7301 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-24 21:37:57 +00:00
Brian Gaeke
b198ca304b Factor out name-mangling from X86/Printer, which is derived from CWriter,
into this new support class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7300 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-24 20:20:58 +00:00
Chris Lattner
30780ccf15 Add support for ~ operator on constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7258 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-23 17:21:17 +00:00
Chris Lattner
949a362802 Remove redundant const qualifiers from cast<> expressions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7253 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-23 15:30:06 +00:00
Chris Lattner
af28ac2201 Add more doxygen comments, add new ConstantInt::getRawValue method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7244 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-23 14:49:06 +00:00
Anand Shukla
6da69e75ec Added special consideration for instrumentation strategy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7208 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-20 15:39:30 +00:00
Vikram S. Adve
a53e3da92c (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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7190 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-16 21:45:15 +00:00
Misha Brukman
bc0e998c49 The word separate' only has one e'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7173 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-14 17:20:40 +00:00
Vikram S. Adve
4d2faf6307 Values stored in CallArgsDescriptor cannot be const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7156 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-10 19:46:15 +00:00
Vikram S. Adve
627eb31cd7 Change interface to MachineInstr::substituteValue to specify more precisely
which args can be substituted: defsOnly, defsAndUses or usesOnly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7154 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-10 19:45:07 +00:00
Misha Brukman
b5c520bfb6 Lowercase versions of `occurrence' need to be spelled correctly, too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7142 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-10 17:05:26 +00:00
Misha Brukman
dd6cb6a43b Occurrence' has no a' and the `r' is doubled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7140 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-10 16:49:51 +00:00
Chris Lattner
3915da3e0f INCLUDE_PARENT_GRAPH is required
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7089 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-02 23:57:21 +00:00
Chris Lattner
a523e22a20 Remove dead method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7083 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-02 23:43:06 +00:00
Chris Lattner
8fd2715098 Add new methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7057 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-02 04:37:00 +00:00
Chris Lattner
73440f6a15 Disable the parent graph code when not compiled in DEBUG mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7056 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-02 04:33:55 +00:00
Vikram S. Adve
daee2b492f Leak fix: delete old objects before reallocation in an assignment operator!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7055 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-02 01:25:44 +00:00
Chris Lattner
c019f9bba5 TD pass keeps track of which functions have complete arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7048 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-01 21:12:10 +00:00
Chris Lattner
b512b24442 Add new operator= impl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7047 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-01 21:11:59 +00:00
Chris Lattner
e2fe664e8f Ok, I'm a moron. Fixed now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7035 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-01 17:15:11 +00:00
Chris Lattner
985d31215c Fix major problem that was causing all kinds of nasty foldings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7034 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-01 17:10:50 +00:00
Chris Lattner
17d5d863b2 Add new methods to BUDS for keeping track of a precise call graph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7028 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-01 16:27:15 +00:00
John Criswell
7a73b80b90 Merged in autoconf branch. This provides configuration via the autoconf
system.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7014 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 21:59:07 +00:00
Chris Lattner
a9d6566e36 Add new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7007 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 05:57:30 +00:00
Chris Lattner
332f0aa425 Be more const correct
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7004 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 05:27:05 +00:00
Chris Lattner
fa45c7a938 Constness changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7002 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 05:10:09 +00:00
Chris Lattner
17fefa3ac3 Substantial revamp: DSGraphs now may contain the graphs for multiple functions
in the same graph


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6991 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 03:14:23 +00:00
Chris Lattner
1a36443c2f Add argument
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6990 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 03:13:36 +00:00
Chris Lattner
0baec255a7 Remove prototype for dead method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6989 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-30 03:13:28 +00:00
Chris Lattner
62b5c167de Add support for gathering sets of must aliases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6971 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-29 00:23:11 +00:00
Chris Lattner
35de11f3b1 Add new DSGraph::ScalarMapTy typedef to avoid pulling representation issues
into callers of getScalarMap


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6944 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28 21:57:13 +00:00
Chris Lattner
2769e6ca92 Add new 'isComplete' method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6943 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28 21:56:42 +00:00
Chris Lattner
d2a6fc397e Add support for 'unsigned' command line arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6928 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28 15:47:20 +00:00
Brian Gaeke
d7908f679e Nice tasty llc fixes. These should fix LLC for x86 for everything in
SingleSource except oopack and Oscar.  (Sorry, Oscar.)

include/llvm/Target/TargetInstrInfo.h: Remove virtual print method. Add
 accessors for ImplicitUses/Defs.
lib/Target/TargetInstrInfo.cpp: Remove virtual print method. If you
 really wanted this, just use MI->print(O, TM); instead...
lib/Target/X86:
FloatingPoint.cpp: ...like this.
X86InstrInfo.h: Remove virtual print method. Define the PrintImplUses
 target-specific flag bit.
X86InstrInfo.def: Add the PrintImplUses flag to all the instructions
 which implicitly use CL, because the assembler needs to see the CL in
 order to generate the right instruction.
Printer.cpp: Ditch fnIndex at Chris's request. Now we use CurrentFnName
  to name constants in the constant pool for each function instead. This
  avoids keeping state between runOnMachineFunction() invocations, which
  is a no-no. Having MangledGlobals be global is a bogon I'd like to get
  rid of too, but making it a static member of Printer causes link errors
  (why???).
 Make NumberForBB into a member of Printer instead of a global, too.
 Make printOp and printMemReference into methods of Printer.
 X86InstrInfo::print is now Printer::printMachineInstruction, because
  TargetInstrInfo::print is history. (Because of this, we have to qualify
  the names of some TargetInstrInfo methods we call.)
 Print out the ImplicitUses field of any instruction we print that has
  the PrintImplUses bit set.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6924 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27 00:00:48 +00:00
Chris Lattner
9b2a14b6f1 Add argument to DAE to allow operation on non-internal functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6895 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 04:12:49 +00:00
Chris Lattner
1ee7855dfa Add prototype for tail-dup pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6847 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-22 20:10:42 +00:00
Chris Lattner
680a7c2d1a Get rid of WORDSIZE macro which can pollute untold numbers of translation units
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6843 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-22 03:09:10 +00:00
Chris Lattner
3889a2cb05 Remove a ton of extraneous #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6842 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-22 03:08:05 +00:00
Chris Lattner
18345bb93f Whoops, accidentally lost a #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6841 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-22 03:04:58 +00:00
Chris Lattner
5bb8776ece Remove support for the MultiObject flag, which was just fundamentally broken
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6839 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-22 03:03:24 +00:00
Chris Lattner
160cf48671 Lots of changes to make the NodeType field private to DSNode.
Add new MultiObject flag


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6793 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-19 21:14:22 +00:00
Chris Lattner
936f771e25 Update comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6785 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-19 17:03:00 +00:00
Chris Lattner
893f025262 Detemplatize the PATypeHandle class, which was only really instantiated on 'Type'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6774 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-18 19:22:36 +00:00
Chris Lattner
697a00fbf0 * Add new CallSite::get factory method
* add new setCalledFunction method
* FIX arg_end method which was horribly broken!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6758 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-17 22:16:59 +00:00
Chris Lattner
a599f871af Add new op_erase method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6757 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-17 22:15:55 +00:00
Chris Lattner
57ec659810 Make sure accessor is properly doxygenized. It wants two lines
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6756 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-17 21:44:51 +00:00
Chris Lattner
95ab3d4bc4 Add accessor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6755 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-17 21:44:31 +00:00