Commit Graph

298797 Commits

Author SHA1 Message Date
Chris Lattner
73645f3b94 Minor cleanups
llvm-svn: 1671
2002-02-04 05:48:24 +00:00
Chris Lattner
a3403539e1 SparcRegInfo does NOT need anything about instruction scheduling.
llvm-svn: 1670
2002-02-04 02:44:38 +00:00
Chris Lattner
720bc02f18 * Move command line parsing debug stuff to InstrScheduling internal header file
SchedPriorities.h

llvm-svn: 1669
2002-02-04 02:44:20 +00:00
Chris Lattner
e769482fd3 Pull all of the scheduling related stuff out of Sparc.cpp into it's own file
llvm-svn: 1668
2002-02-04 00:39:14 +00:00
Chris Lattner
36aa542ef0 Split RegisterAllocation stuff OUT of Sparc.cpp into a well defined pass
that has a very minimal interface (like it should have).

llvm-svn: 1667
2002-02-04 00:33:08 +00:00
Chris Lattner
64593c51bb Move a ton of tables out of SparcInternals.h and move them to Sparc.cpp.
Eventually they will probably get moved again, but at least now they aren't
having to be compiled by 7 different .cpp files...

llvm-svn: 1666
2002-02-04 00:04:35 +00:00
Chris Lattner
f728637f2e * Remove -noasm option. If we're not compiling, what's the point?
* convert over to pass based target backend.  Much cleaner now

llvm-svn: 1665
2002-02-03 23:43:19 +00:00
Chris Lattner
38aa77b911 Convert sparc backend over to use pass based compilation structure.
Try to decouple stuff as much as possible.

llvm-svn: 1664
2002-02-03 23:42:19 +00:00
Chris Lattner
84fa1e7801 Convert sparc backend over to use pass based compilation structure.
Convert some stages into passes in preparation for more splitting up.
Try to decouple stuff as much as possible.

llvm-svn: 1663
2002-02-03 23:41:51 +00:00
Chris Lattner
d682045227 Convert assembly emission over to a two pass approach.
llvm-svn: 1662
2002-02-03 23:41:08 +00:00
Chris Lattner
199853563e Revamp compilation to be pass based instead of being monolithic so that
backend's can customize compilation as much as they want

llvm-svn: 1661
2002-02-03 23:40:22 +00:00
Chris Lattner
eda6bd71a0 Code pulled out of MAchineInstr.(h|cpp)
llvm-svn: 1660
2002-02-03 07:54:50 +00:00
Chris Lattner
74f0a5b35e Switch over to a model where we compile each method, emit assembly, then free
machineinstr memory before starting on the next method.

llvm-svn: 1659
2002-02-03 07:54:10 +00:00
Chris Lattner
4b361376f0 Switch from MachineCodeForVMInstr model that is built into the VMCore library to an annotation based MAchineCodeForInstruction model
Instruction.cpp now has 0 lines of code generation related code in it.

llvm-svn: 1658
2002-02-03 07:52:58 +00:00
Chris Lattner
029af0b37f Add a file level comment
Remove #includes

llvm-svn: 1657
2002-02-03 07:52:04 +00:00
Chris Lattner
92a49c5cae Implement new method by method assembly output & memory releasing
llvm-svn: 1656
2002-02-03 07:51:17 +00:00
Chris Lattner
477923d0d4 * Switch to new TmpInstruction model
* Switch to new MachineCodeForInstruction model

llvm-svn: 1655
2002-02-03 07:50:56 +00:00
Chris Lattner
f08669fcbc * Switch to new TmpInstruction model
llvm-svn: 1654
2002-02-03 07:49:49 +00:00
Chris Lattner
0752167009 * Swithc to new MachineCodeForInstruction model
* Implement memory freeing for instruction temporaries

llvm-svn: 1653
2002-02-03 07:49:15 +00:00
Chris Lattner
e772d28862 * prune #includes
* Implement permethod output of machine code to assembly

llvm-svn: 1652
2002-02-03 07:48:06 +00:00
Chris Lattner
621457a34b Add #include that is no longer implicitly included
llvm-svn: 1651
2002-02-03 07:47:05 +00:00
Chris Lattner
abafc3bc70 Lots of code cleanups, no functional changes
llvm-svn: 1650
2002-02-03 07:46:34 +00:00
Chris Lattner
4cec147d4e * Prune #includes
* Remove MachineCodeFor(Method|VMInstr) code to their own .cpp files

llvm-svn: 1649
2002-02-03 07:46:01 +00:00
Chris Lattner
b86d191dbe * Switch over to cleaner TmpInstruction model
llvm-svn: 1648
2002-02-03 07:39:06 +00:00
Chris Lattner
e59929f7b2 * Straighten out #includes
* Switch to MAchineCodeForInstruction model instead of MachineCodeForVMInstr

llvm-svn: 1647
2002-02-03 07:33:46 +00:00
Chris Lattner
0068ea26d7 * Swich to annotation model for MachineCodeForInstruction
llvm-svn: 1646
2002-02-03 07:31:41 +00:00
Chris Lattner
02d8e37cae Remove extraneous #includes
llvm-svn: 1645
2002-02-03 07:30:08 +00:00
Chris Lattner
a17c469136 * Straighten out #includes
* Switch from MachineCodeForVMInstr to MachineCodeForInstruction model

llvm-svn: 1644
2002-02-03 07:29:45 +00:00
Chris Lattner
7c9c85947c * Get machine instrs from Instructin's by using MachineCodeForInstruction::get
* Convert a few (*X). to X->

llvm-svn: 1643
2002-02-03 07:28:30 +00:00
Chris Lattner
6f27b7d41c Lots of nonfunctional code cleanups
llvm-svn: 1642
2002-02-03 07:25:25 +00:00
Chris Lattner
d4868c6837 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.

llvm-svn: 1641
2002-02-03 07:24:05 +00:00
Chris Lattner
7d01ff38e9 * Trim #includes
llvm-svn: 1640
2002-02-03 07:20:47 +00:00
Chris Lattner
13002dd26b Remove #include
move typedefs here

llvm-svn: 1639
2002-02-03 07:17:37 +00:00
Chris Lattner
101e267eab Remove extranous #include
llvm-svn: 1638
2002-02-03 07:15:36 +00:00
Chris Lattner
6316f38c96 Add a class forward decl
llvm-svn: 1637
2002-02-03 07:13:04 +00:00
Chris Lattner
80011479a3 * Prune many #includes
* Remove MachineCodeForVMInstr -> MachineCodeForInstruction.h
* Remove MachineCodeForMethod  -> MachineCodeForMethod.h

llvm-svn: 1636
2002-02-03 07:11:59 +00:00
Chris Lattner
3149bcd366 * 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

llvm-svn: 1635
2002-02-03 07:07:16 +00:00
Chris Lattner
8d24727914 Remove extraneous #includes
llvm-svn: 1634
2002-02-03 07:03:13 +00:00
Chris Lattner
a1e61fafcf * Inline destructor
* Remove MachineCodeForVMInstr support (it's now an annotation)
* Remove dropAllReferences override (just use User's)

llvm-svn: 1633
2002-02-03 06:58:15 +00:00
Chris Lattner
3382c15033 Remove extraneous #include
llvm-svn: 1632
2002-02-03 06:27:39 +00:00
Chris Lattner
78f1087b01 Catch the parse exception if bad input is provided. Much better than an abort
llvm-svn: 1631
2002-02-01 05:09:35 +00:00
Chris Lattner
ba57d74608 New checkin
llvm-svn: 1630
2002-02-01 05:04:58 +00:00
Chris Lattner
4db2f2cbce Add mergereturn pass
llvm-svn: 1629
2002-02-01 04:54:11 +00:00
Chris Lattner
86595ae342 General cleanup
llvm-svn: 1628
2002-02-01 04:53:48 +00:00
Chris Lattner
f2f31bdfb5 Add more debug output
llvm-svn: 1627
2002-02-01 04:53:36 +00:00
Chris Lattner
204e236306 Add constructor for addition to opt program
llvm-svn: 1626
2002-02-01 04:53:15 +00:00
Chris Lattner
c1874e9259 Rip out irrelevant details
llvm-svn: 1625
2002-02-01 04:44:38 +00:00
Chris Lattner
a7d742f683 Add TESTRUNR var
Correctly create directory for .bc target

llvm-svn: 1623
2002-02-01 04:25:12 +00:00
Chris Lattner
0f342dac09 Initial checkin
llvm-svn: 1622
2002-02-01 04:24:47 +00:00
Chris Lattner
8251ad8445 Initial checkin of 'Other' section
llvm-svn: 1621
2002-02-01 04:24:20 +00:00