1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
Commit Graph

4747 Commits

Author SHA1 Message Date
Chris Lattner
be53e88459 Remove dead code
llvm-svn: 4952
2002-12-07 18:42:13 +00:00
Chris Lattner
b8ec19c4a1 Check in an old testcase
llvm-svn: 4951
2002-12-07 17:08:07 +00:00
Chris Lattner
93f7326092 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
183ea76dc4 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
773fe59c79 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
cb7daf77e8 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
ef10713b0e Added static helper method MergeNodes(). See DataStructure.cpp for more.
llvm-svn: 4946
2002-12-06 21:10:17 +00:00
Vikram S. Adve
c8e0378317 Bug fix in operator==() and in method fini().
llvm-svn: 4945
2002-12-06 15:02:22 +00:00
Brian Gaeke
250d5a3e95 Implement a lot of cast functionality (no FP or 64)
llvm-svn: 4944
2002-12-06 10:49:33 +00:00
Chris Lattner
da374a0ade Make sure to print indirect node again
llvm-svn: 4943
2002-12-06 06:40:00 +00:00
Chris Lattner
48b0c706a4 Fix bug
llvm-svn: 4942
2002-12-06 04:42:16 +00:00
Chris Lattner
3e112b9973 Allow printing partially constructed bitsets
llvm-svn: 4941
2002-12-06 04:42:10 +00:00
Chris Lattner
80ba7cbffc Don't delete values that may still be referenced!
llvm-svn: 4940
2002-12-06 04:02:48 +00:00
Chris Lattner
b20f8a3d5d Tighten up assertion checking
llvm-svn: 4939
2002-12-06 03:55:39 +00:00
Chris Lattner
2c4687b0ed Only build jello when compiling on X86
llvm-svn: 4938
2002-12-06 03:53:40 +00:00
Chris Lattner
a87c79a3fe 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
f4473e1727 Export a new ARCH variable indicating what platform is being compiled
llvm-svn: 4936
2002-12-06 03:45:20 +00:00
Chris Lattner
6c9d57c590 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
3cde2e355e New testcase pointed out by Casey Carter
llvm-svn: 4934
2002-12-05 22:25:47 +00:00
Vikram S. Adve
ab3a68a7c3 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
dbc34a2a95 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
b68d769c01 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
8f56246d62 Added code generation for function prologues and epilogues.
llvm-svn: 4930
2002-12-04 23:58:08 +00:00
Misha Brukman
7dc6877ce2 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
e93c7f9d32 Added push and pop instructions.
llvm-svn: 4928
2002-12-04 23:56:26 +00:00
Misha Brukman
32ec427192 Added prototypes for emitting prologue and epilogue for function code
generation.

llvm-svn: 4927
2002-12-04 23:55:56 +00:00
Chris Lattner
6f002640ff Fix testcase
llvm-svn: 4926
2002-12-04 23:51:44 +00:00
Chris Lattner
70aa4e41ce Fix handling of function calls that return void
llvm-svn: 4925
2002-12-04 23:50:28 +00:00
Chris Lattner
b71d7b4dab Implement initial support for return values from call instructions
llvm-svn: 4924
2002-12-04 23:45:28 +00:00
Misha Brukman
566bac5ec1 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
f8634130dc 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
cf80ad35f3 Added instructions to add/subtract imm32 to/from a reg32.
llvm-svn: 4921
2002-12-04 19:15:22 +00:00
Chris Lattner
f9ddcf9bd5 New testcase
llvm-svn: 4920
2002-12-04 17:35:11 +00:00
Chris Lattner
96edaabdb2 Fix bogus assertion failures
llvm-svn: 4919
2002-12-04 17:32:52 +00:00
Chris Lattner
b538ae0dba Avoid bad assertion
llvm-svn: 4918
2002-12-04 17:28:40 +00:00
Chris Lattner
feeb16616e Remove think-o assertion
llvm-svn: 4917
2002-12-04 17:18:30 +00:00
Chris Lattner
e21cfc9b6c Avoid crashing on Arguments, just silently miscompile
llvm-svn: 4916
2002-12-04 17:15:34 +00:00
Chris Lattner
e8386a7e44 Add main functions to benchmarks
llvm-svn: 4915
2002-12-04 17:15:07 +00:00
Misha Brukman
101076f586 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
1e6cfa1afa 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
f64d7c6939 New testcase
llvm-svn: 4912
2002-12-04 17:00:25 +00:00
Misha Brukman
6e1c4851ea 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
29f4c79239 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
6c1a85e870 Fix a bug I introduced in a previous change
llvm-svn: 4909
2002-12-04 06:56:56 +00:00
Chris Lattner
728e4fbd59 Add support for global value references
llvm-svn: 4908
2002-12-04 06:45:40 +00:00
Chris Lattner
73ac28801e Add support for referencing global variables/functions
llvm-svn: 4907
2002-12-04 06:45:19 +00:00
Chris Lattner
994984de43 Print out direct global references
llvm-svn: 4906
2002-12-04 06:44:41 +00:00
Chris Lattner
d0a42dbe95 Add support for direct global references
llvm-svn: 4905
2002-12-04 06:44:27 +00:00
Chris Lattner
9080df6970 Initial checkin of global var support code
llvm-svn: 4904
2002-12-04 06:09:04 +00:00
Chris Lattner
b7256f170e Implement simple global variable support
llvm-svn: 4903
2002-12-04 06:04:17 +00:00