Chris Lattner
688ac5b723
Remove dead code
...
llvm-svn: 4952
2002-12-07 18:42:13 +00:00
Chris Lattner
55dfb8230e
Check in an old testcase
...
llvm-svn: 4951
2002-12-07 17:08:07 +00:00
Chris Lattner
906eea0e43
Give better error message if two passes of the same argument are registered
...
llvm-svn: 4950
2002-12-07 04:41:22 +00:00
Vikram S. Adve
d1665d2bab
Stronger assertion in getNodeId(): node id must exist in the map.
...
llvm-svn: 4949
2002-12-06 21:19:07 +00:00
Vikram S. Adve
04aee9478c
Two bug fixes:
...
(1) Make entries for Constant values in the ScalarMap.
(2) Set MOD bit for the node pointed to by the
argument of a free instruction.
llvm-svn: 4948
2002-12-06 21:17:10 +00:00
Vikram S. Adve
0d5559fdfb
Fix several related bugs in DSNode::mergeWith() caused by the
...
fact that the incoming nodes may be merged away at intermediate
steps. Use an extra level of indirection via DSNodeHandles
to track the nodes being merged. All this now happens in a
static helper function MergeNodes().
llvm-svn: 4947
2002-12-06 21:15:21 +00:00
Vikram S. Adve
00ca82dbd2
Added static helper method MergeNodes(). See DataStructure.cpp for more.
...
llvm-svn: 4946
2002-12-06 21:10:17 +00:00
Vikram S. Adve
80cac479bd
Bug fix in operator==() and in method fini().
...
llvm-svn: 4945
2002-12-06 15:02:22 +00:00
Brian Gaeke
9cf5718665
Implement a lot of cast functionality (no FP or 64)
...
llvm-svn: 4944
2002-12-06 10:49:33 +00:00
Chris Lattner
bf10511db7
Make sure to print indirect node again
...
llvm-svn: 4943
2002-12-06 06:40:00 +00:00
Chris Lattner
3ef3fdf837
Fix bug
...
llvm-svn: 4942
2002-12-06 04:42:16 +00:00
Chris Lattner
3e6e191e39
Allow printing partially constructed bitsets
...
llvm-svn: 4941
2002-12-06 04:42:10 +00:00
Chris Lattner
7e73168939
Don't delete values that may still be referenced!
...
llvm-svn: 4940
2002-12-06 04:02:48 +00:00
Chris Lattner
07f1535894
Tighten up assertion checking
...
llvm-svn: 4939
2002-12-06 03:55:39 +00:00
Chris Lattner
71b82e39b0
Only build jello when compiling on X86
...
llvm-svn: 4938
2002-12-06 03:53:40 +00:00
Chris Lattner
bd7029ffb3
Fix to make jello compile on Sparc even though it won't run.
...
llvm-svn: 4937
2002-12-06 03:52:51 +00:00
Chris Lattner
138469df3a
Export a new ARCH variable indicating what platform is being compiled
...
llvm-svn: 4936
2002-12-06 03:45:20 +00:00
Chris Lattner
c6509f487b
Fix bug: 2002-12-05-MissedConstProp.ll pointed out by Casey Carter
...
llvm-svn: 4935
2002-12-05 22:41:53 +00:00
Chris Lattner
b20bdd2ba1
New testcase pointed out by Casey Carter
...
llvm-svn: 4934
2002-12-05 22:25:47 +00:00
Vikram S. Adve
bfff743897
Cute bug fix: when moving links from N to this, some links could have
...
been missed if node *this got merged away due to recursive merging!
Also, links were not moved correctly if a node is collapsed.
llvm-svn: 4933
2002-12-05 17:17:26 +00:00
Brian Gaeke
a4a10fe88b
Target/X86/Printer.cpp: Add sizePtr function, and use it instead of
...
" <SIZE> PTR " string when emitting assembly.
Target/X86/X86InstrInfo.def: Tidy up a bit:
Squashed everything down to 118 chars wide, wrapping lines so that
comment is at the same point on each line. Rename "NoImpRegs" as
"NoIR". (most instructions have NoImpRegs twice on a line, so this
saves 10 columns).
Also, annotate various instructions with flags for size of memory operand.
(MemArg16, MemArg32, MemArg64, etc.)
Target/X86/X86InstrInfo.h: Define flags for size of memory operand.
(MemArg16, MemArg32, MemArg64, etc.)
llvm-svn: 4932
2002-12-05 08:30:40 +00:00
Misha Brukman
6e2b097d26
Return 0 to make it into a fully-functioning "Hello, World!" test case.
...
llvm-svn: 4931
2002-12-04 23:58:41 +00:00
Misha Brukman
160a3da184
Added code generation for function prologues and epilogues.
...
llvm-svn: 4930
2002-12-04 23:58:08 +00:00
Misha Brukman
83e62f14dd
Implemented functions for emitting prologues and epilogues;
...
removed EBP from the list of callee-saved registers (it isn't one).
llvm-svn: 4929
2002-12-04 23:57:03 +00:00
Misha Brukman
ab2ffedb38
Added push and pop instructions.
...
llvm-svn: 4928
2002-12-04 23:56:26 +00:00
Misha Brukman
25e6ed4ec1
Added prototypes for emitting prologue and epilogue for function code
...
generation.
llvm-svn: 4927
2002-12-04 23:55:56 +00:00
Chris Lattner
a839ef0cfd
Fix testcase
...
llvm-svn: 4926
2002-12-04 23:51:44 +00:00
Chris Lattner
e21336000b
Fix handling of function calls that return void
...
llvm-svn: 4925
2002-12-04 23:50:28 +00:00
Chris Lattner
4859c65d48
Implement initial support for return values from call instructions
...
llvm-svn: 4924
2002-12-04 23:45:28 +00:00
Misha Brukman
dbb7b65bf3
Fun arithmetic with iterators aimed at fixing a bug: inserting instructions
...
after the *current* instruction while keeping the iterator in the same
'logical' place.
llvm-svn: 4923
2002-12-04 19:24:45 +00:00
Misha Brukman
81c7a3a84c
Adjust the stack pointer after a function call, proportional to the number of
...
arguments pushed onto the stack.
llvm-svn: 4922
2002-12-04 19:22:53 +00:00
Misha Brukman
dfa9cfa67f
Added instructions to add/subtract imm32 to/from a reg32.
...
llvm-svn: 4921
2002-12-04 19:15:22 +00:00
Chris Lattner
2b210cf949
New testcase
...
llvm-svn: 4920
2002-12-04 17:35:11 +00:00
Chris Lattner
fb8032dc84
Fix bogus assertion failures
...
llvm-svn: 4919
2002-12-04 17:32:52 +00:00
Chris Lattner
8d79e5c9d9
Avoid bad assertion
...
llvm-svn: 4918
2002-12-04 17:28:40 +00:00
Chris Lattner
82cc643401
Remove think-o assertion
...
llvm-svn: 4917
2002-12-04 17:18:30 +00:00
Chris Lattner
ccf17c6564
Avoid crashing on Arguments, just silently miscompile
...
llvm-svn: 4916
2002-12-04 17:15:34 +00:00
Chris Lattner
46eff7d55f
Add main functions to benchmarks
...
llvm-svn: 4915
2002-12-04 17:15:07 +00:00
Misha Brukman
1af9bebcda
storeReg2RegOffset() and loadRegOffset2Reg() now take the iterator by value
...
instead of by reference, since they return the modified iterator.
llvm-svn: 4914
2002-12-04 17:14:13 +00:00
Misha Brukman
8b6e7d50b7
On `make clean', kill the core files produced, which are of the form:
...
core.### where ### is the process ID. We use core.[0-9][0-9]* to avoid killing
core.c, core.cpp, and core.h files which may be part of benchmarks.
llvm-svn: 4913
2002-12-04 17:08:15 +00:00
Chris Lattner
4bc49fa46e
New testcase
...
llvm-svn: 4912
2002-12-04 17:00:25 +00:00
Misha Brukman
0d28502c32
Moved buildReg2RegClassMap() into from X86RegisterInfo to MRegisterInfo, since
...
it is target-independent.
llvm-svn: 4911
2002-12-04 16:47:04 +00:00
Chris Lattner
7b1ec5ed3a
Add a "Lazy Function Resolution in Jello" section
...
Remove some todo's
llvm-svn: 4910
2002-12-04 16:12:54 +00:00
Chris Lattner
bc98081090
Fix a bug I introduced in a previous change
...
llvm-svn: 4909
2002-12-04 06:56:56 +00:00
Chris Lattner
b41a1b7c72
Add support for global value references
...
llvm-svn: 4908
2002-12-04 06:45:40 +00:00
Chris Lattner
6425a502a6
Add support for referencing global variables/functions
...
llvm-svn: 4907
2002-12-04 06:45:19 +00:00
Chris Lattner
57f055f2f2
Print out direct global references
...
llvm-svn: 4906
2002-12-04 06:44:41 +00:00
Chris Lattner
418b77ef4b
Add support for direct global references
...
llvm-svn: 4905
2002-12-04 06:44:27 +00:00
Chris Lattner
1813cb90e8
Initial checkin of global var support code
...
llvm-svn: 4904
2002-12-04 06:09:04 +00:00
Chris Lattner
99fee40091
Implement simple global variable support
...
llvm-svn: 4903
2002-12-04 06:04:17 +00:00