Chris Lattner
1b5499bbb8
Make sure noone branches to the entry node of the method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@369 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-24 14:56:34 +00:00
Chris Lattner
766403276f
Compile LLI
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@368 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:09:06 +00:00
Chris Lattner
1a42c342c2
Rename start methods to main so interpreter works easier
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:08:51 +00:00
Chris Lattner
8dc89a330c
Add annotation support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:07:56 +00:00
Chris Lattner
384e5b1595
Handle case where there is no exit node from a flowgraph
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:07:19 +00:00
Chris Lattner
9407be443e
Changed an assertion message
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:06:38 +00:00
Chris Lattner
cda67e5086
Add annotation support to value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@363 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:06:21 +00:00
Chris Lattner
bd8364aed7
* Add assertions
...
* Add a nodeVisited method to the DF interator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@362 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:05:59 +00:00
Chris Lattner
92101acd7f
Initial checkin of interpreter
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-23 17:05:04 +00:00
Ruchira Sasanka
e27c344b56
LV code on machine instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-20 21:12:49 +00:00
Ruchira Sasanka
9166181257
LV info on machine instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@359 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-20 21:11:01 +00:00
Ruchira Sasanka
cc3a0dbb85
Corrected the compilation error by making the ValOperator class a friend of
...
MachineOperand class - Ruchira
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-13 16:54:48 +00:00
Vikram S. Adve
149977b48a
Always set isDef for operand in position resultPos.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@357 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-13 16:32:45 +00:00
Ruchira Sasanka
b0cdcda42a
Changed SetMachineOpernad calls in Set3OperandsFromInstr so that the
...
result position is a def (i.e., added true to the end of call) -- Ruchira
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@356 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-13 16:26:28 +00:00
Ruchira Sasanka
81cb20775a
Changed case 64 to make the first arg of phi a defintion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@355 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-13 16:24:01 +00:00
Vikram S. Adve
4f01c1ee99
Can't use ref to stack value!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@354 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-09 20:14:22 +00:00
Vikram S. Adve
98f2f8053b
Needed old conditions as well as new in skipToNextVal()!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@353 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-09 19:18:33 +00:00
Vikram S. Adve
7c02601b58
Bug fix in ValOpIterator: not moving past operand with NULL Value.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@352 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-08 00:15:42 +00:00
Ruchira Sasanka
0b03c6a492
*** empty log message ***
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@351 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-07 21:01:23 +00:00
Ruchira Sasanka
45c171ee25
added a default isDef arg to SetMachineOperand method - Ruchira
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-07 20:16:52 +00:00
Ruchira Sasanka
773fc471bd
Added isDef field to MachineOperand class - Ruchira
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@349 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-07 20:14:30 +00:00
Vikram S. Adve
98a9c979e2
Add CC operand as 4th operand of SUBcc, and mark it as a def.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@348 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 21:06:10 +00:00
Vikram S. Adve
6a0c6d82a9
Use extra operand for instructions that set a CC register that
...
was not explicit before.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 21:05:39 +00:00
Vikram S. Adve
0fae90e3a2
Also, move burg rule to Makefile.common.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@346 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:06:56 +00:00
Vikram S. Adve
bedbcf65e2
And add rule to create a .cpp source file from burg input file!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@345 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:06:43 +00:00
Vikram S. Adve
811aad97c1
Better still, lets move pathname for Burg to Makefile.common.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@344 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:01:45 +00:00
Vikram S. Adve
dba59efd43
Add path and options for burg.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@343 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:01:20 +00:00
Vikram S. Adve
735c4ce808
Use full pathname for burg.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@342 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 18:53:26 +00:00
Vikram S. Adve
3929cf6779
Allow numOperands of -1 for variable #operands.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@341 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:55:51 +00:00
Vikram S. Adve
960066ad75
Simplify command line options, and add option for printing
...
machine instructions without debugging info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@340 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:53:25 +00:00
Vikram S. Adve
cf8a5f899b
Had used the wrong option.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@339 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:52:28 +00:00
Vikram S. Adve
769939dbde
Added tree nodes for Phi instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:50:29 +00:00
Vikram S. Adve
e4e77f9efc
Generate tree nodes for Phi instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@337 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:49:53 +00:00
Vikram S. Adve
1885da4f49
Allow machine instructions with variable numbers of arguments.
...
This is used only by Phi for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@336 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:49:28 +00:00
Vikram S. Adve
0a229ed79a
Added dummy Phi instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@335 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:48:23 +00:00
Vikram S. Adve
74f4a130d2
Generate dummy Phi machine instruction, plus a bug fix for BrCond(boolreg).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:46:57 +00:00
Vikram S. Adve
35fc0b172e
Added support for testing instruction selection on all but 2 tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@333 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-31 21:45:56 +00:00
Vikram S. Adve
f6445837e9
Added class MachineCodeForBasicBlock.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@332 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-30 18:49:07 +00:00
Vikram S. Adve
76d3520f3e
Record machine instructions in the vector for each basic block.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@331 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-30 18:48:43 +00:00
Vikram S. Adve
b63933975f
Added vector of machine instructions for the basic block.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@330 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-30 18:47:24 +00:00
Chris Lattner
877fbcd8d7
New test cases
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@329 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 18:04:10 +00:00
Chris Lattner
ca112b361e
Remove some gross stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@328 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:52:53 +00:00
Chris Lattner
3868521e22
Allow vararg method types with 0 fixed types
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@327 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:52:35 +00:00
Chris Lattner
36e4b8aec4
Make error msg nicer
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@326 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:52:14 +00:00
Chris Lattner
ee7cb29866
Enable the elimination of method prototypes that are not referenced
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@325 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:51:49 +00:00
Chris Lattner
7c5014767f
* Make sure that the size of the type field can also control the output
...
instruction pattern.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@324 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:51:21 +00:00
Chris Lattner
3d3f289eac
* Add calls to failure template so that it is actually possible to debug
...
why bytecode parsing is failing. Just put a breakpoint in the failure
templates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@323 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:50:18 +00:00
Chris Lattner
81e29632f7
* Fix bugs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@322 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:49:02 +00:00
Chris Lattner
93750fa4f8
* Enable the use of escaped literal strings
...
* Unresolved variable names now have the correct line number for their
error messages
* Rename Def* to Value*
* Check for symbol table collisions before inserting values
* Remove the STRING keyword
* Enable the use of string literals to initialize constant arrays
* Enable the use of extended constants in more locations: eg ret [int] [4, 5]
* Allow method prototypes to appear in the constant pool of the program
* Support varargs methods better. Enable varargs methods with 0 fixed
arguments
* Allow the entire method prototype to optionally be specified in a call inst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@321 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:48:55 +00:00
Chris Lattner
0add2d33e4
Modify var names to make it apparant that the code is really generic
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 17:43:45 +00:00