Chris Lattner
9af6a5d5fe
Implement trivially simple debugger for MachineCodeEmitter interface
...
llvm-svn: 4880
2002-12-03 06:09:26 +00:00
Chris Lattner
9aa0b12f0a
Continue implementing field initializers
...
llvm-svn: 4879
2002-12-03 06:00:33 +00:00
Chris Lattner
ab50fb4b2e
Don't delete temporary files
...
llvm-svn: 4878
2002-12-03 06:00:11 +00:00
Chris Lattner
0d80874f6c
* Move information about Implicit Defs/Uses into X86InstrInfo.def.
...
* Expose information about implicit defs/uses of register through the
MachineInstrInfo.h file.
llvm-svn: 4877
2002-12-03 05:42:53 +00:00
Chris Lattner
c6d6d62c8e
Initialize implicit uses/defs fields for sparc backend to empty list
...
llvm-svn: 4876
2002-12-03 05:41:54 +00:00
Chris Lattner
aa0d2c5fb3
Add entries to track information about implicit uses and definitions of
...
the instructions
llvm-svn: 4875
2002-12-03 05:41:32 +00:00
Brian Gaeke
5485c079d1
brg
...
X86Implicit.cpp, X86Implicit.h: New files.
InstSelectSimple.cpp: Add some clarifications in visitCallInst comments.
llvm-svn: 4874
2002-12-03 00:51:09 +00:00
Chris Lattner
f24e2a748f
More support
...
llvm-svn: 4873
2002-12-02 21:56:28 +00:00
Chris Lattner
15fbd61664
More support for machine code emission: raw instructions
...
llvm-svn: 4872
2002-12-02 21:56:18 +00:00
Chris Lattner
1207ccdbc1
Expose explicit type
...
llvm-svn: 4871
2002-12-02 21:50:41 +00:00
Chris Lattner
db31bbad6b
Start implementing MachineCodeEmitter
...
llvm-svn: 4870
2002-12-02 21:44:34 +00:00
Chris Lattner
d5eadf6aa4
Start adding to the meat of MachineCodeEmitter
...
llvm-svn: 4869
2002-12-02 21:44:13 +00:00
Chris Lattner
58743b9f78
Eliminate OtherFrm
...
llvm-svn: 4868
2002-12-02 21:40:58 +00:00
Chris Lattner
d5823603fa
Remove comment
...
Remove handling of OtherFrm
llvm-svn: 4867
2002-12-02 21:40:46 +00:00
Chris Lattner
787a9de685
Initial support for machine code emission
...
llvm-svn: 4866
2002-12-02 21:24:12 +00:00
Chris Lattner
cbda9ce676
Add initial support for machine code emission
...
llvm-svn: 4865
2002-12-02 21:22:04 +00:00
Chris Lattner
b0a750cf39
Initial version of MachineCodeEmitter interface: empty
...
llvm-svn: 4864
2002-12-02 21:21:36 +00:00
Chris Lattner
23f0e10a9a
The hopefully final version of addPassesToEmitMachineCode which does not
...
have any question about ownership
llvm-svn: 4863
2002-12-02 21:15:42 +00:00
Misha Brukman
d88181ead1
Ignore generated files gram.tab.c and gram.tab.h
...
llvm-svn: 4862
2002-12-02 21:15:37 +00:00
Misha Brukman
4e243cee9a
Ignore generated files Lexer.cpp and llvmAsmParser.*
...
llvm-svn: 4861
2002-12-02 21:14:54 +00:00
Misha Brukman
03628c6e16
Ignore generated files FileLexer.* and FileParser.*
...
llvm-svn: 4860
2002-12-02 21:13:59 +00:00
Chris Lattner
e992ff49bd
Add comment about ownership semantics
...
llvm-svn: 4859
2002-12-02 21:13:45 +00:00
Misha Brukman
2e035d64d1
* Abstracted out stack space allocation into its own function
...
* Added saving of register values to the stack
llvm-svn: 4858
2002-12-02 21:11:58 +00:00
Misha Brukman
aa15563510
Fix order of operands on a store from reg to [reg+offset].
...
llvm-svn: 4857
2002-12-02 21:10:35 +00:00
Chris Lattner
7b6411c3c0
Add stub to emit machine code for JIT
...
llvm-svn: 4856
2002-12-02 21:00:50 +00:00
Chris Lattner
1a025e25ef
Continued support for field intitializers
...
llvm-svn: 4855
2002-12-02 17:53:54 +00:00
Chris Lattner
92f18611f6
Continued support for field initializer
...
llvm-svn: 4854
2002-12-02 17:44:35 +00:00
Chris Lattner
522ba615f6
Continued support for Field Initializer
...
llvm-svn: 4853
2002-12-02 17:43:58 +00:00
Chris Lattner
72969922ea
Adjustments due to new FieldInit stuff
...
llvm-svn: 4852
2002-12-02 17:43:43 +00:00
Chris Lattner
b8ecdceb87
Add comments, factor out common code
...
llvm-svn: 4851
2002-12-02 16:57:01 +00:00
Chris Lattner
97984b1d5d
Add support for field exprs
...
llvm-svn: 4850
2002-12-02 16:43:43 +00:00
Chris Lattner
3567880e6e
* Move BitsInit::resolveReferences up with the rest of BitsInit code
...
* Initial support for field expressions
llvm-svn: 4849
2002-12-02 16:43:30 +00:00
Chris Lattner
ae2bed976c
Initial support for Field Expressions
...
llvm-svn: 4848
2002-12-02 16:42:52 +00:00
Chris Lattner
8eb531cd55
Add correct dependency
...
llvm-svn: 4847
2002-12-02 16:31:46 +00:00
Chris Lattner
6f19b1b6c4
Split up targets
...
llvm-svn: 4846
2002-12-02 16:13:42 +00:00
Chris Lattner
5d850ddb5c
Add comments
...
llvm-svn: 4845
2002-12-02 16:13:23 +00:00
Chris Lattner
27fceda974
Make sure to build lib/Support before the utilities, then use the new
...
makefile in utils to build the utilities
llvm-svn: 4844
2002-12-02 01:23:26 +00:00
Chris Lattner
a6240f6b1a
Initial checkin of TableGen utility
...
llvm-svn: 4843
2002-12-02 01:23:04 +00:00
Chris Lattner
13b66f43cf
Add makefile to build subdirs
...
llvm-svn: 4842
2002-12-02 01:21:34 +00:00
Chris Lattner
08cd1edaa9
Add rawfrm flags
...
llvm-svn: 4841
2002-12-01 23:25:59 +00:00
Chris Lattner
7dcb1436da
Don't add implicit regs
...
llvm-svn: 4840
2002-12-01 23:24:58 +00:00
Brian Gaeke
2ad3501d3f
brg
...
InstSelectSimple.cpp: Refactor out conversion of byte, short -> int
from visitReturnInst() to new method, promote32().
Use it in both visitReturnInst() and visitCallInst().
llvm-svn: 4839
2002-11-30 11:57:28 +00:00
Brian Gaeke
23953e0f8a
brg
...
InstSelectSimple.cpp: First draft of visitCallInst method, handling
int/float args.
X86InstrInfo.def: Add entries for CALL with 32-bit pc relative arg, and
PUSH with 32-bit reg arg.
llvm-svn: 4838
2002-11-29 12:01:58 +00:00
Vikram S. Adve
cb8b5af572
Several fixes:
...
(1) Applied patch from Casey to implement iterator::operator= correctly:
it should use a pointer, not a reference.
(2) Added operators == and !=, and method all().
(3) Important bug fix: excess bits need to be ignored in operations
like ==, count(), and all(). We do this by ensuring excess bits
in the last bitset are always 0.
llvm-svn: 4837
2002-11-27 17:46:38 +00:00
Vikram S. Adve
2d2303db22
Fix logical error in TD pass: we should clear Mod/Ref bits of each caller
...
before inlining their graphs into a function. To support this,
added flags to CloneFlags to strip/keep Mod/Ref bits.
llvm-svn: 4836
2002-11-27 17:41:13 +00:00
Vikram S. Adve
0b5b784922
Added flags to CloneFlags to strip/keep Mod/Ref bits when cloning a graph.
...
llvm-svn: 4835
2002-11-27 17:39:37 +00:00
Vikram S. Adve
9409087108
No longer need local graph to find call sites.
...
Also some major fixes within IPModRef.cpp.
llvm-svn: 4834
2002-11-27 17:38:56 +00:00
Vikram S. Adve
19b3303f3d
(1) Bug fix that was causing nodes with dangling references to be freed.
...
We run removeDeadNodes() on the TD graph up front before using it.
(2) Major enhancement to printing of results: now we list the actual objects
that are mod/ref instead of just printing the bit vectors.
Also an important bug fix in TDDataStructures pass (no change here):
clear Mod/Ref bits of callers before inlining into a function.
llvm-svn: 4833
2002-11-27 17:37:46 +00:00
Brian Gaeke
4ba2cb110a
brg
...
InstSelectSimple.cpp: Add some comments that say what I'm going to do for
calls and casts.
llvm-svn: 4832
2002-11-26 10:43:30 +00:00
Vikram S. Adve
68690673ad
Keep global nodes in each DS Graph (by forcing them to be marked live).
...
llvm-svn: 4831
2002-11-25 18:21:25 +00:00