Chris Lattner
0861b0c3e6
* Straighten out #includes
...
* Switch from MachineCodeForVMInstr to MachineCodeForInstruction model
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1644 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:29:45 +00:00
Chris Lattner
3462cae44f
* Get machine instrs from Instructin's by using MachineCodeForInstruction::get
...
* Convert a few (*X). to X->
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1643 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:28:30 +00:00
Chris Lattner
56cf02d5a0
Lots of nonfunctional code cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1642 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:25:25 +00:00
Chris Lattner
88e2fbc4bb
Add methods to TargetMachine to:
...
* Output assembly code a method at a time instead of building it all up then emitting it as a whole module
* Release memory contained in various annotations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1641 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:24:05 +00:00
Chris Lattner
871b1939b5
* Trim #includes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1640 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:20:47 +00:00
Chris Lattner
f3aaadf482
Remove #include
...
move typedefs here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1639 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:17:37 +00:00
Chris Lattner
9aab9ec321
Remove extranous #include
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1638 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:15:36 +00:00
Chris Lattner
29f4c06b7f
Add a class forward decl
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1637 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:13:04 +00:00
Chris Lattner
a730c86422
* Prune many #includes
...
* Remove MachineCodeForVMInstr -> MachineCodeForInstruction.h
* Remove MachineCodeForMethod -> MachineCodeForMethod.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1636 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:11:59 +00:00
Chris Lattner
d101f22513
* Remove TMP_INSTRUCTION_OPCODE silliness
...
* Fix TmpInstruction copy ctor to not read uninitialized memory
* Fix TmpInstruction copy ctor to not copy 2 operands if there is only one
* Inline Initialize method into ctors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1635 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:07:16 +00:00
Chris Lattner
825e048596
Remove extraneous #includes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1634 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 07:03:13 +00:00
Chris Lattner
b393466842
* Inline destructor
...
* Remove MachineCodeForVMInstr support (it's now an annotation)
* Remove dropAllReferences override (just use User's)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1633 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 06:58:15 +00:00
Chris Lattner
17a5a1ea38
Remove extraneous #include
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1632 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-03 06:27:39 +00:00
Chris Lattner
7d922623e3
Catch the parse exception if bad input is provided. Much better than an abort
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1631 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 05:09:35 +00:00
Chris Lattner
07ae06d18e
New checkin
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1630 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 05:04:58 +00:00
Chris Lattner
0be4101d12
Add mergereturn pass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1629 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:54:11 +00:00
Chris Lattner
417cf7ef96
General cleanup
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1628 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:53:48 +00:00
Chris Lattner
6ff53e77cc
Add more debug output
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1627 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:53:36 +00:00
Chris Lattner
cd6663b9ba
Add constructor for addition to opt program
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1626 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:53:15 +00:00
Chris Lattner
097fc015a8
Rip out irrelevant details
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1625 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:44:38 +00:00
Chris Lattner
fbda7a0297
Add TESTRUNR var
...
Correctly create directory for .bc target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1623 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:25:12 +00:00
Chris Lattner
9a3c2b58bc
Initial checkin
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1622 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:24:47 +00:00
Chris Lattner
04dcb5c4fc
Initial checkin of 'Other' section
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1621 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-01 04:24:20 +00:00
Chris Lattner
c0cbbcf169
Add dependency
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1620 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 18:33:23 +00:00
Chris Lattner
1fcaf00b6c
Fix dependency problem
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1619 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 18:33:09 +00:00
Chris Lattner
dee687b9f7
Free memory when not in use
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1618 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 18:32:49 +00:00
Chris Lattner
ce885e9f9d
* Make debugging output nicer
...
* Implement pass memory freeing after the pass is unused
* Expose PassManager typedef in Pass.h instead of PassManager.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1617 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 18:32:27 +00:00
Chris Lattner
65b9709071
Provide the right AnalysisID for postdominators
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1616 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 18:29:24 +00:00
Chris Lattner
0253ceeb56
Resolve deps
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1615 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 15:52:41 +00:00
Chris Lattner
6a39f2c80c
Resolve dependencies
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1614 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 15:43:11 +00:00
Chris Lattner
21801532fd
Eliminate SimplifyCFG.h file, pull everything into the UnifyMethodExitNodes class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1613 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 01:12:06 +00:00
Chris Lattner
2d4fe48b17
Remove this file. Folded into UnifyMethodExitNodes pass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1612 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 01:02:32 +00:00
Chris Lattner
fcc93d2c0a
MethodPass's are now guaranteed to not be run on external methods!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1611 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:51:24 +00:00
Chris Lattner
fb1b3f119d
Convert to use new Pass framework...
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1610 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:47:12 +00:00
Chris Lattner
cd50d3fafa
PassManager is now in its own header file
...
MethodPass's now cannot be run on external methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1609 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:46:45 +00:00
Chris Lattner
0f3bfffd9e
PassManager is now in it's own header file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1608 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:46:22 +00:00
Chris Lattner
fa6db4be91
Convert analyze over to use new pass framework for its analyses
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1607 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:46:09 +00:00
Chris Lattner
41300863c5
Implement new pass framework
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1606 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:45:31 +00:00
Chris Lattner
793c6b80d3
Convert xforms over to new pass structure.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1605 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:45:11 +00:00
Chris Lattner
9c9be48b83
If an invalid alternative is listed for an argument, print the valid options
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1604 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:42:56 +00:00
Chris Lattner
93193f8063
Convert analyses to new pass structure
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1603 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:42:27 +00:00
Chris Lattner
0f0fc3253d
Implement loop depth calculation in terms of dominators instead of intervals
...
No problems with irreducibility now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1602 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:42:06 +00:00
Chris Lattner
92a12d5c6b
LoopDepth calculation is now in CFG namespace
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1601 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:41:13 +00:00
Chris Lattner
9261f0e02b
Implement LoopDepth calculation in terms of dominators instead of intervals
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1600 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:41:01 +00:00
Chris Lattner
a4e4b23b6d
Fix bug where we didn't initialize and finalize basic block passes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1599 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:40:44 +00:00
Chris Lattner
bafff3380e
Forgot to force
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1598 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:27:32 +00:00
Chris Lattner
8b309de132
Testcase broken - Entry node of method cannot have predecessors!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1597 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:25:00 +00:00
Chris Lattner
967a04442d
Convert xforms over to use new pass structure
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1596 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-30 23:29:35 +00:00
Chris Lattner
facd752d3a
Convert analyses over to new Pass framework
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1595 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-30 23:27:55 +00:00
Chris Lattner
05ad462d1b
Checkin new pass framework. This one is more useful and automatically
...
creates analysis results for passes that need them. MethodPass's never
have to worry about being invoked on external methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1594 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-30 23:20:39 +00:00