oota-llvm.git
23 years agoMake newlines be newlines! This should now work in both lli and native code.
Vikram S. Adve [Sun, 28 Oct 2001 22:44:02 +0000 (22:44 +0000)]
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

23 years agoRemove non linking related stuff
Chris Lattner [Sun, 28 Oct 2001 22:43:06 +0000 (22:43 +0000)]
Remove non linking related stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1015 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoRemove unneccesary function prototypes
Chris Lattner [Sun, 28 Oct 2001 22:40:59 +0000 (22:40 +0000)]
Remove unneccesary function prototypes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1014 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix some illegal uses of the ## operator
Chris Lattner [Sun, 28 Oct 2001 22:38:22 +0000 (22:38 +0000)]
Fix some illegal uses of the ## operator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1013 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoMinor fix I omitted to check in.
Vikram S. Adve [Sun, 28 Oct 2001 22:19:06 +0000 (22:19 +0000)]
Minor fix I omitted to check in.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1012 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoSupport printing control characters in standard C/assembly style,
Vikram S. Adve [Sun, 28 Oct 2001 21:48:05 +0000 (21:48 +0000)]
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

23 years agoRecord constants that need to be emitted in the assembly code.
Vikram S. Adve [Sun, 28 Oct 2001 21:46:23 +0000 (21:46 +0000)]
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

23 years agoAllow combinations of True/Anti/Output flags for each edge to
Vikram S. Adve [Sun, 28 Oct 2001 21:45:02 +0000 (21:45 +0000)]
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

23 years agoAdd edges between call instructions and (a) load/store instructions, and
Vikram S. Adve [Sun, 28 Oct 2001 21:43:33 +0000 (21:43 +0000)]
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

23 years agoGenerate SETX for 64-bit integers!
Vikram S. Adve [Sun, 28 Oct 2001 21:41:46 +0000 (21:41 +0000)]
Generate SETX for 64-bit integers!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1007 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdd SETX instruction for 64-bit constants.
Vikram S. Adve [Sun, 28 Oct 2001 21:41:01 +0000 (21:41 +0000)]
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

23 years agoNeed to subtract, not add, stack size in SAVE instruction!
Vikram S. Adve [Sun, 28 Oct 2001 21:39:47 +0000 (21:39 +0000)]
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

23 years agoMajor overhaul to print globals and constants.
Vikram S. Adve [Sun, 28 Oct 2001 21:38:52 +0000 (21:38 +0000)]
Major overhaul to print globals and constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1004 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded name-mangling routines for future use.
Vikram S. Adve [Sun, 28 Oct 2001 21:38:02 +0000 (21:38 +0000)]
Added name-mangling routines for future use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1003 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoUse separate functions for printing values of each type.
Vikram S. Adve [Sun, 28 Oct 2001 21:37:25 +0000 (21:37 +0000)]
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

23 years agoAdded printPointer.
Vikram S. Adve [Sun, 28 Oct 2001 21:34:59 +0000 (21:34 +0000)]
Added printPointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1001 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoRuntime routines implementing print<TYPE> for all basic types.
Vikram S. Adve [Sun, 28 Oct 2001 21:31:33 +0000 (21:31 +0000)]
Runtime routines implementing print<TYPE> for all basic types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1000 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded a constant pool to record values that need to be emitted
Vikram S. Adve [Sun, 28 Oct 2001 21:24:50 +0000 (21:24 +0000)]
Added a constant pool to record values that need to be emitted
in the assembly code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@999 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdd support for name mangling.
Vikram S. Adve [Sun, 28 Oct 2001 21:23:44 +0000 (21:23 +0000)]
Add support for name mangling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@998 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoSwitch useLLVMSyntax to useCSyntax.
Vikram S. Adve [Sun, 28 Oct 2001 21:21:25 +0000 (21:21 +0000)]
Switch useLLVMSyntax to useCSyntax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@997 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdd calls to print results in fib, simpleadd and sumarray.
Vikram S. Adve [Sun, 28 Oct 2001 21:16:34 +0000 (21:16 +0000)]
Add calls to print results in fib, simpleadd and sumarray.
indirectcall is the same as fib but uses function pointers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@996 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoSupport printing control characters in standard C/assembly style.
Vikram S. Adve [Sun, 28 Oct 2001 21:06:48 +0000 (21:06 +0000)]
Support printing control characters in standard C/assembly style.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@995 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdd methods print<TYPE> for String, Pointer, and each primitive type.
Vikram S. Adve [Sun, 28 Oct 2001 20:52:27 +0000 (20:52 +0000)]
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

23 years agoAdded rules for building sparc executable with and without tracing,
Vikram S. Adve [Sun, 28 Oct 2001 20:18:11 +0000 (20:18 +0000)]
Added rules for building sparc executable with and without tracing,
and linking with local runtime library.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@993 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded support for spilling
Ruchira Sasanka [Sun, 28 Oct 2001 18:15:12 +0000 (18:15 +0000)]
Added support for spilling

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@992 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoMoved callerSaving code to machine specific classes since we have to handle
Ruchira Sasanka [Sun, 28 Oct 2001 18:14:15 +0000 (18:14 +0000)]
Moved callerSaving code to machine specific classes since we have to handle
%ccr reg differently.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@991 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded spill code support; moved insertCallerSaving to SparRegInfo since
Ruchira Sasanka [Sun, 28 Oct 2001 18:12:02 +0000 (18:12 +0000)]
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

23 years agoImplement a -trace command line option and a trace option in the interpreter.
Chris Lattner [Sat, 27 Oct 2001 08:43:52 +0000 (08:43 +0000)]
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

23 years ago* Make pointer values work better by treating them uniformly as 64 bit values.
Chris Lattner [Sat, 27 Oct 2001 08:28:11 +0000 (08:28 +0000)]
* 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

23 years agoProvide argv for commands
Chris Lattner [Sat, 27 Oct 2001 05:54:31 +0000 (05:54 +0000)]
Provide argv for commands

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@987 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoProvide option to enable eating of all arguments following a specific one
Chris Lattner [Sat, 27 Oct 2001 05:54:17 +0000 (05:54 +0000)]
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

23 years ago* Implement exit() builtin function
Chris Lattner [Sat, 27 Oct 2001 04:15:57 +0000 (04:15 +0000)]
* 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

23 years agoFixed load syntax in EmitAssembly
Ruchira Sasanka [Wed, 24 Oct 2001 22:05:34 +0000 (22:05 +0000)]
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

23 years agoAdd support for building a runtime library for LLI
Chris Lattner [Wed, 24 Oct 2001 19:52:41 +0000 (19:52 +0000)]
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

23 years agoFixed logic for checking whether a LR received the correct color.
Ruchira Sasanka [Wed, 24 Oct 2001 15:56:58 +0000 (15:56 +0000)]
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

23 years agoImplement a -L command line argument to specify a search path. Implement minimal...
Chris Lattner [Wed, 24 Oct 2001 06:23:00 +0000 (06:23 +0000)]
Implement a -L command line argument to specify a search path.  Implement minimal ar compatibility stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@975 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoClean up error handling a bit. Add / as a seperator for command line arguments....
Chris Lattner [Wed, 24 Oct 2001 06:21:56 +0000 (06:21 +0000)]
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

23 years agoFrivolous cleanups
Chris Lattner [Wed, 24 Oct 2001 06:21:22 +0000 (06:21 +0000)]
Frivolous cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@973 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoDang it, do NOT check in code that enables debugging. Bad chris
Chris Lattner [Wed, 24 Oct 2001 05:14:35 +0000 (05:14 +0000)]
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

23 years agoTwo things:
Chris Lattner [Wed, 24 Oct 2001 05:12:04 +0000 (05:12 +0000)]
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

23 years agoChanges to get some meaningful feedback from the bytecode reader. At some point...
Chris Lattner [Wed, 24 Oct 2001 01:15:12 +0000 (01:15 +0000)]
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

23 years agoCorrected a bug in SparcRegInfo.cpp - to add inserted instructions before a return
Ruchira Sasanka [Tue, 23 Oct 2001 21:40:39 +0000 (21:40 +0000)]
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

23 years agoadded support to move "added instructions" after the delay slot
Ruchira Sasanka [Tue, 23 Oct 2001 21:38:42 +0000 (21:38 +0000)]
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

23 years agoAdded support to move "added instructions" after the delay slot
Ruchira Sasanka [Tue, 23 Oct 2001 21:38:00 +0000 (21:38 +0000)]
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

23 years agoAdd '-v' option to enable verbose output from the linker
Chris Lattner [Tue, 23 Oct 2001 20:44:55 +0000 (20:44 +0000)]
Add '-v' option to enable verbose output from the linker

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@966 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix problem linking in a method prototype when a method body exists
Chris Lattner [Tue, 23 Oct 2001 20:43:42 +0000 (20:43 +0000)]
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

23 years agoRemove unnamed prototypes that are created.
Chris Lattner [Tue, 23 Oct 2001 15:30:18 +0000 (15:30 +0000)]
Remove unnamed prototypes that are created.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@964 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoNegative FP constants... whodathunkit.
Chris Lattner [Tue, 23 Oct 2001 04:13:01 +0000 (04:13 +0000)]
Negative FP constants... whodathunkit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@963 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoOops, didn't mean to check in enabled debugging support. :(
Chris Lattner [Tue, 23 Oct 2001 03:21:42 +0000 (03:21 +0000)]
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

23 years agoFixed a LONG standing, SCARY problem with bytecode encoding. It turns out to be...
Chris Lattner [Tue, 23 Oct 2001 03:21:10 +0000 (03:21 +0000)]
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

23 years agoMore symbol table bugfixes that are impossible to track down. Goody
Chris Lattner [Tue, 23 Oct 2001 02:32:45 +0000 (02:32 +0000)]
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

23 years agoAllow unresolved/opaque types to be read and written to bytecode files
Chris Lattner [Tue, 23 Oct 2001 01:53:22 +0000 (01:53 +0000)]
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

23 years agoFix another annoying bug that took forever to track down. This one involves abstract...
Chris Lattner [Tue, 23 Oct 2001 01:53:01 +0000 (01:53 +0000)]
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

23 years agoDisable alloca code gen tests until size of extra args in stack frame
Vikram S. Adve [Mon, 22 Oct 2001 22:33:08 +0000 (22:33 +0000)]
Disable alloca code gen tests until size of extra args in stack frame
can be computed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@957 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoDelete MachineCodeInfoForMethod object.
Vikram S. Adve [Mon, 22 Oct 2001 22:32:11 +0000 (22:32 +0000)]
Delete MachineCodeInfoForMethod object.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@956 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix a problem occuring with type unification of symbol table entries
Chris Lattner [Mon, 22 Oct 2001 21:59:46 +0000 (21:59 +0000)]
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

23 years agoSimplify etags command.
Vikram S. Adve [Mon, 22 Oct 2001 13:58:22 +0000 (13:58 +0000)]
Simplify etags command.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@954 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded object of class MachineCodeForMethod.
Vikram S. Adve [Mon, 22 Oct 2001 13:58:08 +0000 (13:58 +0000)]
Added object of class MachineCodeForMethod.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@953 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded class MachineCodeForMethod to provide method-level information
Vikram S. Adve [Mon, 22 Oct 2001 13:57:39 +0000 (13:57 +0000)]
Added class MachineCodeForMethod to provide method-level information
about the generated native code (e.g., frame layout information).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@952 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded function interfaces for generating prolog and epilog code.
Vikram S. Adve [Mon, 22 Oct 2001 13:56:33 +0000 (13:56 +0000)]
Added function interfaces for generating prolog and epilog code.
The functions must be implemented by the target-specific code generator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@951 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded function IsLeafMethod to identify leaf methods.
Vikram S. Adve [Mon, 22 Oct 2001 13:55:46 +0000 (13:55 +0000)]
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

23 years agoAdded MachineCodeForMethod object in class Method.
Vikram S. Adve [Mon, 22 Oct 2001 13:52:47 +0000 (13:52 +0000)]
Added MachineCodeForMethod object in class Method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@949 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoUse class MachineCodeForMethod to print machine code.
Vikram S. Adve [Mon, 22 Oct 2001 13:52:03 +0000 (13:52 +0000)]
Use class MachineCodeForMethod to print machine code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@948 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded class MachineCodeForMethod.
Vikram S. Adve [Mon, 22 Oct 2001 13:51:33 +0000 (13:51 +0000)]
Added class MachineCodeForMethod.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@947 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoCosmetic changes only.
Vikram S. Adve [Mon, 22 Oct 2001 13:51:09 +0000 (13:51 +0000)]
Cosmetic changes only.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@946 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoModify code that processes delay slots so that it preserves any
Vikram S. Adve [Mon, 22 Oct 2001 13:49:27 +0000 (13:49 +0000)]
Modify code that processes delay slots so that it preserves any
useful instructions already inserted into delay slots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@945 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoUNUSED.
Vikram S. Adve [Mon, 22 Oct 2001 13:46:38 +0000 (13:46 +0000)]
UNUSED.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@944 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoSplit JMPL into JMPLCALL and JMPLRET.
Vikram S. Adve [Mon, 22 Oct 2001 13:44:53 +0000 (13:44 +0000)]
Split JMPL into JMPLCALL and JMPLRET.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@943 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded a frame layout class, and code to insert prolog/epilog code.
Vikram S. Adve [Mon, 22 Oct 2001 13:44:23 +0000 (13:44 +0000)]
Added a frame layout class, and code to insert prolog/epilog code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@942 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoReordered registers slightly to simplify a new check.
Vikram S. Adve [Mon, 22 Oct 2001 13:43:08 +0000 (13:43 +0000)]
Reordered registers slightly to simplify a new check.
Added a function to map between the caller's and callee's register windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@941 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoSplit JMPL into JMPLCALL and JMPLRET so that IsCall and IsReturn can
Vikram S. Adve [Mon, 22 Oct 2001 13:41:12 +0000 (13:41 +0000)]
Split JMPL into JMPLCALL and JMPLRET so that IsCall and IsReturn can
be used to distinguish those uses of the `jmpl' instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@940 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded functions to generate prolog and epilog code.
Vikram S. Adve [Mon, 22 Oct 2001 13:36:31 +0000 (13:36 +0000)]
Added functions to generate prolog and epilog code.
Use JMPLRET instead of RETURN for method returns so that

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@939 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded SAVE and RESTORE. Duplicated JMPL into JMPLCALL and JMPLRET,
Vikram S. Adve [Mon, 22 Oct 2001 13:32:55 +0000 (13:32 +0000)]
Added SAVE and RESTORE.  Duplicated JMPL into JMPLCALL and JMPLRET,
which have the same opcode and operands but different flags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@938 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoReordered a couple of registers to simplify some new checks.
Vikram S. Adve [Mon, 22 Oct 2001 13:31:53 +0000 (13:31 +0000)]
Reordered a couple of registers to simplify some new checks.
Added code to map between caller's and callee's register windows.
Added frame layout class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@937 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoRemove ugly subclass of Opaque type
Chris Lattner [Mon, 22 Oct 2001 06:01:08 +0000 (06:01 +0000)]
Remove ugly subclass of Opaque type

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@936 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix bug with
Chris Lattner [Mon, 22 Oct 2001 05:56:09 +0000 (05:56 +0000)]
Fix bug with
%list = type {%list *}
%list = type {%list *}

not being accepted (broken testmisc.ll)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@935 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix bug exposed by this testcase:
Chris Lattner [Mon, 22 Oct 2001 04:55:44 +0000 (04:55 +0000)]
Fix bug exposed by this testcase:

declare int "call_operand"      (%rtx_def*, int)        ;; Prototype for: call_operand
declare int "restore_operand"   (%rtx_def*, int)        ;; Prototype for: restore_operand

%rtx_def = type opaque
%rtx_def = type int
implementation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@934 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoTwo changes:
Chris Lattner [Sun, 21 Oct 2001 23:02:41 +0000 (23:02 +0000)]
Two changes:
1. Delete type handle regardless of whether a collision occured
2. Remove a MAJOR pessimization of runtime performance (thought be be an optimization at the time).

This second one was causing a 105k llvm file (from gcc) to parse in 58 seconds... without the
'optimization' it now parses in 3.64 seconds.  I suck.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@933 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix erroneous assertion failure on the following code:
Chris Lattner [Sun, 21 Oct 2001 21:54:51 +0000 (21:54 +0000)]
Fix erroneous assertion failure on the following code:
declare int "malloc"(...)

...

%reg112 = call int (...) * %malloc( uint %cast1007 )

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@932 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix bug caused by:
Chris Lattner [Sun, 21 Oct 2001 21:43:25 +0000 (21:43 +0000)]
Fix bug caused by:
%list = type opaque
%list = type %list

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@931 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded support for both call/jmpl instructions
Ruchira Sasanka [Sun, 21 Oct 2001 16:43:41 +0000 (16:43 +0000)]
Added support for both call/jmpl instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@930 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix problem with a cast instruction that must be expanded to type 0
Chris Lattner [Sun, 21 Oct 2001 00:14:44 +0000 (00:14 +0000)]
Fix problem with a cast instruction that must be expanded to type 0

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@929 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFixed printing of offset operand for RETURN instruction.
Vikram S. Adve [Sat, 20 Oct 2001 21:33:50 +0000 (21:33 +0000)]
Fixed printing of offset operand for RETURN instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@928 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoUse CALL for direct function calls; JMPL for indirect ones.
Vikram S. Adve [Sat, 20 Oct 2001 20:57:06 +0000 (20:57 +0000)]
Use CALL for direct function calls; JMPL for indirect ones.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@927 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoMinor bug fix in printing operands of JMPL.
Vikram S. Adve [Sat, 20 Oct 2001 20:56:40 +0000 (20:56 +0000)]
Minor bug fix in printing operands of JMPL.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@926 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix shift printing when using a ubyte LHS
Chris Lattner [Sat, 20 Oct 2001 09:33:10 +0000 (09:33 +0000)]
Fix shift printing when using a ubyte LHS

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@925 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdd support for And, XOR, and Or
Chris Lattner [Sat, 20 Oct 2001 09:32:59 +0000 (09:32 +0000)]
Add support for And, XOR, and Or

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@924 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoIt is valid to have unsigned arrays as constants... the linker may initialize them...
Chris Lattner [Sat, 20 Oct 2001 06:43:05 +0000 (06:43 +0000)]
It is valid to have unsigned arrays as constants... the linker may initialize them later

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@923 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded code to support unusable Suggested Colors.
Ruchira Sasanka [Fri, 19 Oct 2001 21:42:06 +0000 (21:42 +0000)]
Added code to support unusable Suggested Colors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@922 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded code so that colorIGNode does not unnecessarily reserve unusable
Ruchira Sasanka [Fri, 19 Oct 2001 21:41:16 +0000 (21:41 +0000)]
Added code so that colorIGNode does not unnecessarily reserve unusable
Suggested colors for neighbors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@921 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded code to PhyRegAlloc to mark unusable suggested regs
Ruchira Sasanka [Fri, 19 Oct 2001 21:39:31 +0000 (21:39 +0000)]
Added code to PhyRegAlloc to mark unusable suggested regs
Added initialization to AdjList to IGNode constructor - major bug fix

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@920 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded code to Initialize (MachineOperand) to initialize regNum to -1 -- Ruchira
Ruchira Sasanka [Fri, 19 Oct 2001 18:17:49 +0000 (18:17 +0000)]
Added code to Initialize (MachineOperand) to initialize regNum to -1 -- Ruchira

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@919 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoCorrected call interference bug - suggested color not allocated if
Ruchira Sasanka [Fri, 19 Oct 2001 17:23:43 +0000 (17:23 +0000)]
Corrected call interference bug - suggested color not allocated if
volatile and there are call interferences

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@918 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoChanged Call interference info
Ruchira Sasanka [Fri, 19 Oct 2001 17:21:59 +0000 (17:21 +0000)]
Changed Call interference info

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@917 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoCorrected call interference bug
Ruchira Sasanka [Fri, 19 Oct 2001 17:21:03 +0000 (17:21 +0000)]
Corrected call interference bug

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@916 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoFix to reference the right header
Chris Lattner [Fri, 19 Oct 2001 15:39:14 +0000 (15:39 +0000)]
Fix to reference the right header

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@915 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agono major change
Ruchira Sasanka [Thu, 18 Oct 2001 23:58:08 +0000 (23:58 +0000)]
no major change

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@914 91177308-0d34-0410-b5e6-96231b3b80d8

23 years ago*** empty log message ***
Vikram S. Adve [Thu, 18 Oct 2001 22:47:50 +0000 (22:47 +0000)]
*** empty log message ***

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@913 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded implict operand printing for operator( ostream, MachineInstr&)
Ruchira Sasanka [Thu, 18 Oct 2001 22:40:02 +0000 (22:40 +0000)]
Added implict operand printing for operator( ostream, MachineInstr&)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@912 91177308-0d34-0410-b5e6-96231b3b80d8

23 years agoAdded support for condition code loading/stroing in methods cpReg2Reg etc.
Ruchira Sasanka [Thu, 18 Oct 2001 22:38:52 +0000 (22:38 +0000)]
Added support for condition code loading/stroing in methods cpReg2Reg etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@911 91177308-0d34-0410-b5e6-96231b3b80d8