Commit Graph

298797 Commits

Author SHA1 Message Date
Chris Lattner
5751150169 Fix testcases to handle new syntax for construction and initializeation
Test constants

llvm-svn: 600
2001-09-18 04:38:50 +00:00
Chris Lattner
e2c8d43e1d Remove the unsized array constraint
llvm-svn: 599
2001-09-18 04:38:32 +00:00
Chris Lattner
3779864fcf Add support for global constants, and for initializers for constants
llvm-svn: 598
2001-09-18 04:01:05 +00:00
Chris Lattner
7fb14f54f8 Add support for global constants, and for initializers for constants
Clean up parser somewhat by factoring out freeing of ID's into setname function

llvm-svn: 597
2001-09-18 04:00:54 +00:00
Ruchira Sasanka
3a3bb0d68c added a method to get reg num after register allocation
llvm-svn: 596
2001-09-15 21:11:48 +00:00
Ruchira Sasanka
8efbd10c86 modified machine code printing
llvm-svn: 595
2001-09-15 21:11:11 +00:00
Ruchira Sasanka
c56b9552eb -modified machine operand class - took regNum out of union to set regNum after
retister allocation.

llvm-svn: 594
2001-09-15 20:16:41 +00:00
Ruchira Sasanka
970886e738 modified printing of debug messages
llvm-svn: 593
2001-09-15 19:11:31 +00:00
Ruchira Sasanka
86b2ad4b7c --added methods for printing
llvm-svn: 592
2001-09-15 19:08:41 +00:00
Ruchira Sasanka
bae3812a95 added setRegForValue to MachineOperand class
llvm-svn: 591
2001-09-15 19:07:45 +00:00
Ruchira Sasanka
6fd9532e54 fixed printing messages
llvm-svn: 590
2001-09-15 19:06:58 +00:00
Ruchira Sasanka
fe0292e68d -- debug messages dissabled
llvm-svn: 589
2001-09-15 16:54:40 +00:00
Ruchira Sasanka
b2587588d2 added reg alloc support
llvm-svn: 588
2001-09-15 00:34:31 +00:00
Ruchira Sasanka
f60342a231 --reg alloc code added
llvm-svn: 587
2001-09-15 00:33:26 +00:00
Ruchira Sasanka
671428c8a7 -reg alloc code
llvm-svn: 586
2001-09-15 00:31:44 +00:00
Ruchira Sasanka
7d144a8500 added register allocation code
llvm-svn: 585
2001-09-15 00:30:44 +00:00
Ruchira Sasanka
7e81e7bf77 Added regalloc
llvm-svn: 584
2001-09-15 00:28:37 +00:00
Chris Lattner
8be8fb9625 Oops, accidentally checked my debugging makefile
llvm-svn: 583
2001-09-14 23:21:08 +00:00
Chris Lattner
172a5f2911 Fix a bug with not removing method level types after compilation
llvm-svn: 582
2001-09-14 22:03:42 +00:00
Ruchira Sasanka
11002a7b93 added RegAlloc Directory to DIRS
llvm-svn: 581
2001-09-14 21:28:17 +00:00
Ruchira Sasanka
808568eafc *** empty log message ***
llvm-svn: 580
2001-09-14 21:18:34 +00:00
Ruchira Sasanka
dfdab46dc1 *** empty log message ***
llvm-svn: 579
2001-09-14 20:31:39 +00:00
Chris Lattner
59c9403c7e Remove invalid testcase
llvm-svn: 578
2001-09-14 20:30:58 +00:00
Chris Lattner
52a3873f30 Remove invalid testcase. Unneccesary anyways
llvm-svn: 577
2001-09-14 20:28:57 +00:00
Chris Lattner
4dcbbd5379 Add new test cases
llvm-svn: 576
2001-09-14 20:03:04 +00:00
Chris Lattner
95c652b59b Add support for loading and storing pointers...
llvm-svn: 575
2001-09-14 20:00:02 +00:00
Chris Lattner
ad2cbf0e18 Fix a bug that caused a crash if a setcc had zero uses.
llvm-svn: 574
2001-09-14 18:29:28 +00:00
Chris Lattner
7f155e10f6 Add a forward decl, oops.
llvm-svn: 573
2001-09-14 17:55:51 +00:00
Chris Lattner
8d44b99844 Chris seems fond of #include <vector>. Fix these. Also convert use list in
Value to a vector instead of a list.

Move SchedGraph.h & SchedPriorities.h into lib/CodeGen/InstrScheduling

llvm-svn: 572
2001-09-14 16:56:32 +00:00
Chris Lattner
1680fb1617 Add a comment
llvm-svn: 571
2001-09-14 16:08:12 +00:00
Chris Lattner
5452d611d1 Minor reformatting, & protection fixes
llvm-svn: 570
2001-09-14 16:08:06 +00:00
Chris Lattner
6875e9cc97 Break scheduling infrastructure out of TargetMachine.cpp into SchedInfo.cpp
llvm-svn: 569
2001-09-14 15:43:58 +00:00
Chris Lattner
374e3563c1 Split Register specific stuff out from TargetMachine.h to RegInfo.h
Get rid of unneccesary #includes from TargetMachine.h

llvm-svn: 568
2001-09-14 06:20:10 +00:00
Chris Lattner
87b3bf630b Split Target/Machine.h into three files:
* Machine.h
* InstInfo.h
* SchedInfo.h

TODO: Split out reg info stuff
llvm-svn: 567
2001-09-14 06:08:03 +00:00
Chris Lattner
22a6a90511 Make a new llvm/Target #include directory.
Move files from lib/CodeGen/TargetMachine to lib/Target
Move TargetData.h and TargetMachine.h to Target/{Data.h|Machine.h}
Prepare to split TargetMachine.h into several smaller files

llvm-svn: 566
2001-09-14 05:34:53 +00:00
Chris Lattner
f8464e4b8d Checkin changes to:
1. Clean up the TargetMachine structure.  No more wierd pointers that have to
   be cast around and taken care of by the target.
2. Instruction Scheduling now takes the schedinfo as an argument.  The same
   should be done with the instinfo, it just isn't now.

llvm-svn: 565
2001-09-14 04:32:55 +00:00
Chris Lattner
dce33dfa4b Checkin changes to:
1. Clean up the TargetMachine structure.  No more wierd pointers that have to
   be cast around and taken care of by the target.
2. Instruction Scheduling now takes the schedinfo as an argument.  The same
   should be done with the instinfo, it just isn't now.
3. Sparc.h is now just a factory method.  Eventually this file will dissapear,
   but probably not until we have more than one backend.  :)

llvm-svn: 564
2001-09-14 04:32:38 +00:00
Chris Lattner
5fae0de330 Move files to new sparc directory
llvm-svn: 563
2001-09-14 03:56:45 +00:00
Chris Lattner
06028541ab Move the sparc target to a new lib/Target directory
llvm-svn: 562
2001-09-14 03:55:11 +00:00
Chris Lattner
b0ddffaae3 Move files.
llvm-svn: 561
2001-09-14 03:47:57 +00:00
Chris Lattner
fc1e0f33fa Move the contents of the CodeGen/TargetMachine/Sparc directory to Target/Sparc
llvm-svn: 560
2001-09-14 03:46:34 +00:00
Chris Lattner
0a823a062c This checkin represents some cleanup of the backend, implementing the following things:
1. The TargetMachine structure is free to decide the process a particular target uses to generate code.
2. All of the gooee details of the sparc backend are now localized in the lib/CodeGen/TargetMAchine/Sparc directory.  The Sparc.h file that is globally visible is just a stub.
3. The Sparc.h file that esxists now will dissapear entirely someday when we have multiple backends chosen by a factory of some sort.

llvm-svn: 559
2001-09-14 03:37:52 +00:00
Chris Lattner
ff0c8a7511 This checkin represents some cleanup of the backend, implementing the following things:
1. The TargetMachine structure is free to decide the process a particular target uses to generate code.
2. All of the gooee details of the sparc backend are now localized in the lib/CodeGen/TargetMAchine/Sparc directory.  The Sparc.h file that is globally visible is just a stub.
3. The Sparc.h file that esxists now will dissapear entirely someday when we have multiple backends chosen by a factory of some sort.


NOTE! The BBLiveVar.cpp file dependant on the Sparc backend, and is therefore not generic/portale to other backends.  This needs to be fixed.

llvm-svn: 558
2001-09-14 03:37:22 +00:00
Chris Lattner
2124f99556 Updates to use local header files.
Note that this reverted changes that Ruchira commited that broke the build and
are unmaintainable without other checkins.

llvm-svn: 557
2001-09-14 03:33:32 +00:00
Chris Lattner
2a35abb142 Export the instruction forest support from the analysis library
llvm-svn: 556
2001-09-14 01:42:42 +00:00
Chris Lattner
1dd2c3f386 Initial instruction tree support for the analysis library
llvm-svn: 555
2001-09-14 01:42:26 +00:00
Chris Lattner
aa8d4c7517 Generic k-way tree support
llvm-svn: 554
2001-09-14 01:42:01 +00:00
Chris Lattner
f8459bb199 More cleanups, preparing to revamp InstrForest to, among other things,
not leak all its allocated memory.

llvm-svn: 553
2001-09-12 16:34:03 +00:00
Chris Lattner
16dd09a7bb * Clean up InstrForest
* Fix ins sel problem, test case:
void "foo" (int *%x, int *%y)

begin
        seteq int *%x, %y
        ret void
end

llvm-svn: 552
2001-09-12 01:28:49 +00:00
Chris Lattner
cc38da77e8 Eliminate 'BasicNode' from InstrForest.
llvm-svn: 551
2001-09-11 23:52:11 +00:00