oota-llvm.git
22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 years agoremoved some debug messages
Ruchira Sasanka [Thu, 18 Oct 2001 22:36:26 +0000 (22:36 +0000)]
removed some debug messages

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

22 years agoEnhancements to pass argc & argv to main if required
Chris Lattner [Thu, 18 Oct 2001 21:55:32 +0000 (21:55 +0000)]
Enhancements to pass argc & argv to main if required

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

22 years agoCheck in new testcase based on .c file. Adapted to run with lli
Chris Lattner [Thu, 18 Oct 2001 21:55:07 +0000 (21:55 +0000)]
Check in new testcase based on .c file.  Adapted to run with lli

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

22 years agoFix null termination issue
Chris Lattner [Thu, 18 Oct 2001 21:54:42 +0000 (21:54 +0000)]
Fix null termination issue

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

22 years agoAdd new testcase from C source
Chris Lattner [Thu, 18 Oct 2001 21:50:39 +0000 (21:50 +0000)]
Add new testcase from C source

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

22 years agoRemove unneccesary retcode var
Chris Lattner [Thu, 18 Oct 2001 20:33:21 +0000 (20:33 +0000)]
Remove unneccesary retcode var

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

22 years agoRefactor Assembly/Bytecode writer code into Assembly & bytecode libraries
Chris Lattner [Thu, 18 Oct 2001 20:32:07 +0000 (20:32 +0000)]
Refactor Assembly/Bytecode writer code into Assembly & bytecode libraries

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

22 years agoRefactor code into Assembly & bytecode libraries
Chris Lattner [Thu, 18 Oct 2001 20:31:54 +0000 (20:31 +0000)]
Refactor code into Assembly & bytecode libraries

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

22 years agoinitial checkin
Chris Lattner [Thu, 18 Oct 2001 20:31:42 +0000 (20:31 +0000)]
initial checkin

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

22 years agomove llvm/Transforms/Pass.h to the top level llvm/Pass.h file
Chris Lattner [Thu, 18 Oct 2001 20:19:09 +0000 (20:19 +0000)]
move llvm/Transforms/Pass.h to the top level llvm/Pass.h file

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

22 years agoExpose more xforms to the opt utility
Chris Lattner [Thu, 18 Oct 2001 20:06:45 +0000 (20:06 +0000)]
Expose more xforms to the opt utility

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

22 years agoBytecode writer is yanked out of Module printer
Chris Lattner [Thu, 18 Oct 2001 20:06:31 +0000 (20:06 +0000)]
Bytecode writer is yanked out of Module printer

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

22 years agoRefix bugs, stop using deprecated strstream header
Chris Lattner [Thu, 18 Oct 2001 20:06:03 +0000 (20:06 +0000)]
Refix bugs, stop using deprecated strstream header

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

22 years agoInitial checkin
Chris Lattner [Thu, 18 Oct 2001 20:05:37 +0000 (20:05 +0000)]
Initial checkin

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

22 years agoInitial Checkin
Chris Lattner [Thu, 18 Oct 2001 20:05:30 +0000 (20:05 +0000)]
Initial Checkin

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

22 years agoPull bytecode writing out of Module writer pass. Prepare to move to seperate file
Chris Lattner [Thu, 18 Oct 2001 20:05:07 +0000 (20:05 +0000)]
Pull bytecode writing out of Module writer pass.  Prepare to move to seperate file

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

22 years agoAdd operator[] accessors
Chris Lattner [Thu, 18 Oct 2001 20:04:40 +0000 (20:04 +0000)]
Add operator[] accessors

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

22 years agoMove malloc/free lowering after tracing until lli supports
Vikram S. Adve [Thu, 18 Oct 2001 18:20:20 +0000 (18:20 +0000)]
Move malloc/free lowering after tracing until lli supports
calls to external malloc/free functions.

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

22 years agoOnly print values live at BB or method exit, and insert loads at each
Vikram S. Adve [Thu, 18 Oct 2001 18:16:11 +0000 (18:16 +0000)]
Only print values live at BB or method exit, and insert loads at each
BB exit to read and print values stored in that BB.   Note that only
these stored values are live at method exit!.  Also, print messages at
method entry and exit.

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

22 years agoAdd option to print per module instead of per method, so that
Vikram S. Adve [Thu, 18 Oct 2001 18:13:49 +0000 (18:13 +0000)]
Add option to print per module instead of per method, so that
global declarations are also printed.

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

22 years agoOnly output code if file open is successful
Chris Lattner [Thu, 18 Oct 2001 17:07:22 +0000 (17:07 +0000)]
Only output code if file open is successful

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

22 years agoTrace code should always be exported just before code generation;
Vikram S. Adve [Thu, 18 Oct 2001 13:51:20 +0000 (13:51 +0000)]
Trace code should always be exported just before code generation;
this is not a debugging option.  But we can export it as assembly
instead of bytecode if -debugtrace is specified.

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

22 years agoHandle multiple exit blocks correctly.
Vikram S. Adve [Thu, 18 Oct 2001 13:49:22 +0000 (13:49 +0000)]
Handle multiple exit blocks correctly.
Restore string variable cache.
Resurrect code to use formatted printing instead of PrintVal
but leave it turned off for now.

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

22 years agoAdd option to print as bytecode instead of assembly.
Vikram S. Adve [Thu, 18 Oct 2001 13:47:49 +0000 (13:47 +0000)]
Add option to print as bytecode instead of assembly.

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

22 years agoUse the standard header not the old one
Chris Lattner [Thu, 18 Oct 2001 06:13:08 +0000 (06:13 +0000)]
Use the standard header not the old one

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

22 years agoDang, we were losing the Constant bit on globals. Fix this
Chris Lattner [Thu, 18 Oct 2001 06:11:23 +0000 (06:11 +0000)]
Dang, we were losing the Constant bit on globals.  Fix this

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

22 years agoAdd support to insert trace code as an "optimization"
Chris Lattner [Thu, 18 Oct 2001 06:05:15 +0000 (06:05 +0000)]
Add support to insert trace code as an "optimization"

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

22 years agoConvert to be compatible with lli.
Chris Lattner [Thu, 18 Oct 2001 06:03:05 +0000 (06:03 +0000)]
Convert to be compatible with lli.
Need to eliminate duplicate \n entries

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

22 years agoConvert to new simpler, more powerful pass structure
Chris Lattner [Thu, 18 Oct 2001 05:28:44 +0000 (05:28 +0000)]
Convert to new simpler, more powerful pass structure

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

22 years agoMassive hacks to try to fix subtle logic bugs. I think it's all working now,
Chris Lattner [Thu, 18 Oct 2001 05:28:08 +0000 (05:28 +0000)]
Massive hacks to try to fix subtle logic bugs.  I think it's all working now,
at least what used to.  I should disable method exit code completely because
it's broken (doesn't insert just post dominating values)

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

22 years agoConvert to new simpler pass itf
Chris Lattner [Thu, 18 Oct 2001 05:27:33 +0000 (05:27 +0000)]
Convert to new simpler pass itf

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

22 years agoConvert to new simpler Pass structure
Chris Lattner [Thu, 18 Oct 2001 05:22:27 +0000 (05:22 +0000)]
Convert to new simpler Pass structure
Componentize better

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

22 years agoConvert to new simpler Pass structure
Chris Lattner [Thu, 18 Oct 2001 05:22:15 +0000 (05:22 +0000)]
Convert to new simpler Pass structure

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

22 years agoConvert to new simpler pass structure
Chris Lattner [Thu, 18 Oct 2001 05:21:56 +0000 (05:21 +0000)]
Convert to new simpler pass structure

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

22 years agoSimplify Pass by removing silly subclasses
Chris Lattner [Thu, 18 Oct 2001 05:20:53 +0000 (05:20 +0000)]
Simplify Pass by removing silly subclasses
Fix an iterator problem

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

22 years agoFix minor bug, update comments
Chris Lattner [Thu, 18 Oct 2001 01:49:48 +0000 (01:49 +0000)]
Fix minor bug, update comments

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

22 years agoChange Sources specifier to ExtraSources
Chris Lattner [Thu, 18 Oct 2001 01:48:09 +0000 (01:48 +0000)]
Change Sources specifier to ExtraSources

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

22 years agoConvert optimizations to the pass infrastructure
Chris Lattner [Thu, 18 Oct 2001 01:32:34 +0000 (01:32 +0000)]
Convert optimizations to the pass infrastructure

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

22 years agoPass's return true if they make a modification, not if they fail
Chris Lattner [Thu, 18 Oct 2001 01:32:17 +0000 (01:32 +0000)]
Pass's return true if they make a modification, not if they fail

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

22 years agoConvert optimizations to use the Pass infrastructure
Chris Lattner [Thu, 18 Oct 2001 01:31:58 +0000 (01:31 +0000)]
Convert optimizations to use the Pass infrastructure

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

22 years ago* Passes return true if they change something, not if they fail
Chris Lattner [Thu, 18 Oct 2001 01:31:43 +0000 (01:31 +0000)]
* Passes return true if they change something, not if they fail
* Convert opt to use Pass's and convert optimizations to pass structure

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

22 years agoPasses return true if they change something, not if they fail
Chris Lattner [Thu, 18 Oct 2001 01:31:22 +0000 (01:31 +0000)]
Passes return true if they change something, not if they fail

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

22 years ago1. Move most of the constant-fixup code into machine-independent file
Vikram S. Adve [Thu, 18 Oct 2001 00:26:20 +0000 (00:26 +0000)]
1. Move most of the constant-fixup code into machine-independent file
   InstrSelectionSupport.cpp.  It now happens in a bottom-up pass on
   each BURG tree after the original top-down selection pass on the tree.
2. Handle global values as constants (viz., constant addresses).

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

22 years agoReverse previous change.
Vikram S. Adve [Thu, 18 Oct 2001 00:23:32 +0000 (00:23 +0000)]
Reverse previous change.

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

22 years agoGenerate assembly code for testcodegen.
Vikram S. Adve [Thu, 18 Oct 2001 00:22:14 +0000 (00:22 +0000)]
Generate assembly code for testcodegen.

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

22 years agoAdded several cases where a constant must be forwarded into a use.
Vikram S. Adve [Thu, 18 Oct 2001 00:22:02 +0000 (00:22 +0000)]
Added several cases where a constant must be forwarded into a use.

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

22 years agoSparc-specific code shared between local files.
Vikram S. Adve [Thu, 18 Oct 2001 00:03:20 +0000 (00:03 +0000)]
Sparc-specific code shared between local files.

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

22 years agoMoved implementation of class UltraSparcInstrInfo to SparcInstrInfo.cpp.
Vikram S. Adve [Thu, 18 Oct 2001 00:02:32 +0000 (00:02 +0000)]
Moved implementation of class UltraSparcInstrInfo to SparcInstrInfo.cpp.

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

22 years agoAdded virtual function to generate an instruction sequence to
Vikram S. Adve [Thu, 18 Oct 2001 00:02:06 +0000 (00:02 +0000)]
Added virtual function to generate an instruction sequence to
load a constant into a register.

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

22 years agoMoved implementation of class UltraSparcInstrInfo here.
Vikram S. Adve [Thu, 18 Oct 2001 00:01:48 +0000 (00:01 +0000)]
Moved implementation of class UltraSparcInstrInfo here.

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

22 years ago1. Add a bottom-up pass on BURG trees that is used to fix constant operands.
Vikram S. Adve [Wed, 17 Oct 2001 23:59:09 +0000 (23:59 +0000)]
1. Add a bottom-up pass on BURG trees that is used to fix constant operands.
  Needs to be bottom up because constant values may be forward-substituted
   to their uses (i.e., into the parent in the BURG tree).
2. Move most of the constant-fixup code into machine-indepedent file
   InstrSelectionSupport.cpp.

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

22 years ago1. Add a bottom-up pass on BURG trees that is used to fix constant operands.
Vikram S. Adve [Wed, 17 Oct 2001 23:57:50 +0000 (23:57 +0000)]
1. Add a bottom-up pass on BURG trees that is used to fix constant operands.
   Needs to be bottom up because constant values may be forward-substituted
   to their uses (i.e., into the parent in the BURG tree).
2. Move most of the constant-fixup code into machine-indepedent file
   InstrSelectionSupport.cpp.

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

22 years agoSeparate VM instruction that generates the instructions that compute a value
Vikram S. Adve [Wed, 17 Oct 2001 23:55:16 +0000 (23:55 +0000)]
Separate VM instruction that generates the instructions that compute a value
from the value itself (the one causing an edge) because the latter may be
a temporary used within the instruction sequence for the VM instruction.

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

22 years ago*** empty log message ***
Vikram S. Adve [Wed, 17 Oct 2001 23:53:16 +0000 (23:53 +0000)]
*** empty log message ***

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

22 years agoRemove extra assert in dyn_cast_or_null.
Vikram S. Adve [Wed, 17 Oct 2001 22:39:50 +0000 (22:39 +0000)]
Remove extra assert in dyn_cast_or_null.

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

22 years agoDisable codgen test for calltest.ll.
Vikram S. Adve [Wed, 17 Oct 2001 20:14:34 +0000 (20:14 +0000)]
Disable codgen test for calltest.ll.

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

22 years agoOnly list automatically generated .cpp files.
Vikram S. Adve [Wed, 17 Oct 2001 12:34:26 +0000 (12:34 +0000)]
Only list automatically generated .cpp files.

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

22 years agoAllow only extra Source files to be listed in a local Makefile.
Vikram S. Adve [Wed, 17 Oct 2001 12:33:55 +0000 (12:33 +0000)]
Allow only extra Source files to be listed in a local Makefile.
Needed for automatically generated .cpp files.

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

22 years agoSimplify some code
Chris Lattner [Tue, 16 Oct 2001 19:54:17 +0000 (19:54 +0000)]
Simplify some code
Remove Method special case
Fix bug exposed by this testcase:

implementation

void "PtrFunc2"()
begin
bb1:
        %reg = add int(int)* null, null
        add int (int)* %reg, null
        ret void
end

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

22 years agoadded initializing regNum to -1 in both constructors of MachineOperand
Ruchira Sasanka [Tue, 16 Oct 2001 16:36:34 +0000 (16:36 +0000)]
added initializing regNum to -1 in both constructors of MachineOperand

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

22 years agochanged debugg message printing - no change to useful code
Ruchira Sasanka [Tue, 16 Oct 2001 16:34:44 +0000 (16:34 +0000)]
changed debugg message printing - no change to useful code

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

22 years agoNo major change - commented some debug code
Ruchira Sasanka [Tue, 16 Oct 2001 01:33:55 +0000 (01:33 +0000)]
No major change - commented some debug code

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

22 years agoNo major change - added some comments
Ruchira Sasanka [Tue, 16 Oct 2001 01:25:05 +0000 (01:25 +0000)]
No major change - added some comments

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

22 years agoAdded support for caller saving
Ruchira Sasanka [Tue, 16 Oct 2001 01:23:19 +0000 (01:23 +0000)]
Added support for caller saving

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

22 years agoAdd rule to build executables
Chris Lattner [Mon, 15 Oct 2001 20:08:19 +0000 (20:08 +0000)]
Add rule to build executables

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

22 years agoEmit the proper .type declarations to tell the debugger what a function is
Chris Lattner [Mon, 15 Oct 2001 19:34:17 +0000 (19:34 +0000)]
Emit the proper .type declarations to tell the debugger what a function is

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

22 years agoHandle abnormal jmpl syntax correctly
Chris Lattner [Mon, 15 Oct 2001 19:21:31 +0000 (19:21 +0000)]
Handle abnormal jmpl syntax correctly

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

22 years agoImplement ulong & long support
Chris Lattner [Mon, 15 Oct 2001 19:18:26 +0000 (19:18 +0000)]
Implement ulong & long support

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

22 years agoMake main do some simple work without requiring main arguments to be happy
Chris Lattner [Mon, 15 Oct 2001 19:18:01 +0000 (19:18 +0000)]
Make main do some simple work without requiring main arguments to be happy

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

22 years agoPrint Debug Code to stderr instead of stdout so that it doesn't mess up the assembly...
Chris Lattner [Mon, 15 Oct 2001 18:30:06 +0000 (18:30 +0000)]
Print Debug Code to stderr instead of stdout so that it doesn't mess up the assembly output

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

22 years agoOutput to cerr rather than cout so that debug info doesn't mess up assembly generation
Chris Lattner [Mon, 15 Oct 2001 18:15:27 +0000 (18:15 +0000)]
Output to cerr rather than cout so that debug info doesn't mess up assembly generation

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

22 years agoCompile with v9 extensions
Chris Lattner [Mon, 15 Oct 2001 17:55:35 +0000 (17:55 +0000)]
Compile with v9 extensions

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