Chris Lattner
24d3a8b58d
Check in to use moved stringizing code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1024 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-29 13:39:38 +00:00
Chris Lattner
b97d98ec7c
Remove C string capability from VMCore library. Move to Support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1021 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-29 13:27:09 +00:00
Vikram S. Adve
c426c63b39
Make newlines be newlines! This should now work in both lli and native code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1016 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 22:44:02 +00:00
Chris Lattner
2301a070f6
Remove non linking related stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1015 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 22:43:06 +00:00
Chris Lattner
316a65bda9
Fix some illegal uses of the ## operator
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1013 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 22:38:22 +00:00
Vikram S. Adve
53b44e1c32
Minor fix I omitted to check in.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1012 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 22:19:06 +00:00
Vikram S. Adve
c750c29f28
Support printing control characters in standard C/assembly style,
...
if you specify useCSyntax = true. The old style is still the default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1011 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:48:05 +00:00
Vikram S. Adve
94e40ef064
Record constants that need to be emitted in the assembly code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1010 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:46:23 +00:00
Vikram S. Adve
d0d79c01b4
Allow combinations of True/Anti/Output flags for each edge to
...
support, e.g., dependences on Call instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1009 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:45:02 +00:00
Vikram S. Adve
a93bbac606
Add edges between call instructions and (a) load/store instructions, and
...
(b) any instructions that use or set CC registers. Whether or not the
latter are needed really should be machine-dependent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1008 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:43:33 +00:00
Vikram S. Adve
a2a7094662
Generate SETX for 64-bit integers!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1007 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:41:46 +00:00
Vikram S. Adve
c7b2e5c81e
Add SETX instruction for 64-bit constants.
...
Add M_CC_FLAG for many instructions that use int or fp CC registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1006 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:41:01 +00:00
Vikram S. Adve
0589b2c63f
Need to subtract, not add, stack size in SAVE instruction!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1005 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:39:47 +00:00
Vikram S. Adve
953c83e1ee
Major overhaul to print globals and constants.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1004 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:38:52 +00:00
Vikram S. Adve
9466f5113b
Added name-mangling routines for future use.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1003 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:38:02 +00:00
Vikram S. Adve
d889330869
Use separate functions for printing values of each type.
...
Put trace code before condition-generating instruction in basic blocks
that end in a conditional branch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1002 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 21:37:25 +00:00
Vikram S. Adve
3eb60f8775
Add methods print<TYPE> for String, Pointer, and each primitive type.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@994 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 20:52:27 +00:00
Ruchira Sasanka
20c82b12c9
Added support for spilling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@992 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 18:15:12 +00:00
Ruchira Sasanka
174bded6ce
Added spill code support; moved insertCallerSaving to SparRegInfo since
...
we need to handle %ccr reg in a special way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@990 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-28 18:12:02 +00:00
Chris Lattner
43e3f7c962
Implement a -trace command line option and a trace option in the interpreter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@989 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-27 08:43:52 +00:00
Chris Lattner
c259316730
* Make pointer values work better by treating them uniformly as 64 bit values.
...
This causes code that is generated by gcc to work better.
* Implement mul & div
* Export malloc, free, and pow
* add strtol, atoi, and atol to the runtime library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@988 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-27 08:28:11 +00:00
Chris Lattner
204eec3f57
Provide argv for commands
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@987 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-27 05:54:31 +00:00
Chris Lattner
caccd761a6
Provide option to enable eating of all arguments following a specific one
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@986 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-27 05:54:17 +00:00
Chris Lattner
e43db88b2d
* Implement exit() builtin function
...
* Implement linked in runtime library with puts(char*) in it
* implement builtin putchar(int) function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@985 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-27 04:15:57 +00:00
Ruchira Sasanka
7dcd61209a
Fixed load syntax in EmitAssembly
...
Fixed cpReg2Mem (store) operand oreder in SparcRegInfo.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@984 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 22:05:34 +00:00
Chris Lattner
4a82271451
Add support for building a runtime library for LLI
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@983 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 19:52:41 +00:00
Ruchira Sasanka
c74a720204
Fixed logic for checking whether a LR received the correct color.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@976 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 15:56:58 +00:00
Chris Lattner
f038acbee2
Clean up error handling a bit. Add / as a seperator for command line arguments. This is just a big old ugly hack.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@974 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 06:21:56 +00:00
Chris Lattner
7eadfa1db8
Frivolous cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@973 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 06:21:22 +00:00
Chris Lattner
f608608878
Dang it, do NOT check in code that enables debugging. Bad chris
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@972 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 05:14:35 +00:00
Chris Lattner
008f906afd
Two things:
...
1. Forward propogate a loaded constant to make debugging slightly less annoying
2. Fix an extremely nasty hard to find bug that really irritated me for the better
part of 6 hours and was causing linking to die and bizarre and mysterious ways.
Things should be much more stable now that this one liner has been fixed. GRR
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@971 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 05:12:04 +00:00
Chris Lattner
d6b65255fe
Changes to get some meaningful feedback from the bytecode reader. At some point this stuff should all be exception driven, but for now it is not.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@970 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-24 01:15:12 +00:00
Ruchira Sasanka
88dedc1544
Corrected a bug in SparcRegInfo.cpp - to add inserted instructions before a return
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@969 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 21:40:39 +00:00
Ruchira Sasanka
f7434f0e1d
added support to move "added instructions" after the delay slot
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@968 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 21:38:42 +00:00
Ruchira Sasanka
251d8db133
Added support to move "added instructions" after the delay slot
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@967 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 21:38:00 +00:00
Chris Lattner
c2d774b6c1
Fix problem linking in a method prototype when a method body exists
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@965 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 20:43:42 +00:00
Chris Lattner
2172ca1bab
Remove unnamed prototypes that are created.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@964 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 15:30:18 +00:00
Chris Lattner
90ebc114c6
Negative FP constants... whodathunkit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@963 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 04:13:01 +00:00
Chris Lattner
b0f20d72b1
Oops, didn't mean to check in enabled debugging support. :(
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@962 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 03:21:42 +00:00
Chris Lattner
2b9f6004df
Fixed a LONG standing, SCARY problem with bytecode encoding. It turns out to be an endian problem that only shows up with type 0 instructions in LARGE programs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@961 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 03:21:10 +00:00
Chris Lattner
e638c10cb0
More symbol table bugfixes that are impossible to track down. Goody
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@960 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 02:32:45 +00:00
Chris Lattner
5855f0db2a
Allow unresolved/opaque types to be read and written to bytecode files
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@959 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 01:53:22 +00:00
Chris Lattner
d48d6c74ad
Fix another annoying bug that took forever to track down. This one involves abstract type resolution at a bad time that broke symbol tables.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@958 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-23 01:53:01 +00:00
Vikram S. Adve
7db933d513
Delete MachineCodeInfoForMethod object.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@956 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 22:32:11 +00:00
Chris Lattner
c895294762
Fix a problem occuring with type unification of symbol table entries
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@955 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 21:59:46 +00:00
Vikram S. Adve
a7edb1888c
Added function IsLeafMethod to identify leaf methods.
...
This will use the CallGraph only if one is provided.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@950 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:55:46 +00:00
Vikram S. Adve
ac0ec47957
Added MachineCodeForMethod object in class Method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@949 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:52:47 +00:00
Vikram S. Adve
c023be29a4
Use class MachineCodeForMethod to print machine code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@948 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:52:03 +00:00
Vikram S. Adve
1d6158f98f
Added class MachineCodeForMethod.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@947 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:51:33 +00:00
Vikram S. Adve
7ad1046065
Cosmetic changes only.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@946 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:51:09 +00:00