oota-llvm.git
21 years agoAdd support for isnan
Chris Lattner [Fri, 20 Dec 2002 04:18:13 +0000 (04:18 +0000)]
Add support for isnan

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

21 years agoAdd stats output
Chris Lattner [Fri, 20 Dec 2002 04:14:19 +0000 (04:14 +0000)]
Add stats output

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

21 years agoFix warning
Chris Lattner [Fri, 20 Dec 2002 04:13:28 +0000 (04:13 +0000)]
Fix warning

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

21 years agoCBW doesn't modify AL
Chris Lattner [Fri, 20 Dec 2002 04:13:11 +0000 (04:13 +0000)]
CBW doesn't modify AL

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

21 years agofix warning
Chris Lattner [Fri, 20 Dec 2002 04:12:48 +0000 (04:12 +0000)]
fix warning

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

21 years ago* Fix several register aliasing bugs
Chris Lattner [Wed, 18 Dec 2002 08:14:26 +0000 (08:14 +0000)]
* Fix several register aliasing bugs
* Add a new option to eliminate spilling of registers that are only used
  within a basic block.

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

21 years agoPrint argc as well as argv
Chris Lattner [Wed, 18 Dec 2002 02:07:21 +0000 (02:07 +0000)]
Print argc as well as argv

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

21 years agoDon't force setCC instructions into AL
Chris Lattner [Wed, 18 Dec 2002 01:44:31 +0000 (01:44 +0000)]
Don't force setCC instructions into AL

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

21 years agoImplicit defs/uses list may be empty.
Chris Lattner [Wed, 18 Dec 2002 01:11:14 +0000 (01:11 +0000)]
Implicit defs/uses list may be empty.

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

21 years agoAdd comments, switch uses/defs to match InstrInfo.def file
Chris Lattner [Wed, 18 Dec 2002 01:05:54 +0000 (01:05 +0000)]
Add comments, switch uses/defs to match InstrInfo.def file

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

21 years agoAdd reg clobber list for direct calls
Chris Lattner [Wed, 18 Dec 2002 01:05:31 +0000 (01:05 +0000)]
Add reg clobber list for direct calls
Represent empty use/def list as a null pointer

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

21 years agoSimplify interface to remove virtual function references
Chris Lattner [Tue, 17 Dec 2002 04:20:39 +0000 (04:20 +0000)]
Simplify interface to remove virtual function references

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

21 years agoUse new reginfo interface
Chris Lattner [Tue, 17 Dec 2002 04:19:40 +0000 (04:19 +0000)]
Use new reginfo interface

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

21 years agoUpdate to use new interface for register info
Chris Lattner [Tue, 17 Dec 2002 04:19:17 +0000 (04:19 +0000)]
Update to use new interface for register info

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

21 years agoNew file
Chris Lattner [Tue, 17 Dec 2002 04:03:08 +0000 (04:03 +0000)]
New file

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

21 years agoAdd prolog/epilog spills/reloads to counters
Chris Lattner [Tue, 17 Dec 2002 03:16:10 +0000 (03:16 +0000)]
Add prolog/epilog spills/reloads to counters
Move X86 specific alignment gunk to X86 files

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

21 years agoRound number of bytes allocated on the stack up to a multiple of 4 so that the
Chris Lattner [Tue, 17 Dec 2002 03:15:26 +0000 (03:15 +0000)]
Round number of bytes allocated on the stack up to a multiple of 4 so that the
stack remains aligned

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

21 years agoLocal register allocator is now stable enough for use, it passes all tests
Chris Lattner [Tue, 17 Dec 2002 02:51:15 +0000 (02:51 +0000)]
Local register allocator is now stable enough for use, it passes all tests

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

21 years agoFix many bugs, regallocator now saves callee-save registers instead of target
Chris Lattner [Tue, 17 Dec 2002 02:50:10 +0000 (02:50 +0000)]
Fix many bugs, regallocator now saves callee-save registers instead of target

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

21 years agoRegister allocator is responsible for spilling callee saved regs
Chris Lattner [Tue, 17 Dec 2002 02:48:57 +0000 (02:48 +0000)]
Register allocator is responsible for spilling callee saved regs

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

21 years agoMake testcase return 0 on success
Chris Lattner [Tue, 17 Dec 2002 02:02:01 +0000 (02:02 +0000)]
Make testcase return 0 on success

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

21 years agoBuild add instructions of the correct form!
Chris Lattner [Mon, 16 Dec 2002 23:36:57 +0000 (23:36 +0000)]
Build add instructions of the correct form!

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

21 years agoAdd dummy implementation of __main
Chris Lattner [Mon, 16 Dec 2002 23:31:48 +0000 (23:31 +0000)]
Add dummy implementation of __main

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

21 years agoTwo fixes:
Chris Lattner [Mon, 16 Dec 2002 22:54:46 +0000 (22:54 +0000)]
Two fixes:
  * Only load incoming arguments into virtual registers once at the
    beginning of the function
  * Assign different virtual registers to each reference to constants/globals

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

21 years agoFix prolog/epilog in the presence of alloca
Chris Lattner [Mon, 16 Dec 2002 22:29:30 +0000 (22:29 +0000)]
Fix prolog/epilog in the presence of alloca

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

21 years agoMake sure stack manipulation refers to ESP the right number of times
Chris Lattner [Mon, 16 Dec 2002 22:29:06 +0000 (22:29 +0000)]
Make sure stack manipulation refers to ESP the right number of times

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

21 years agoNew testcase for printing out arguments
Chris Lattner [Mon, 16 Dec 2002 20:09:54 +0000 (20:09 +0000)]
New testcase for printing out arguments

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

21 years agoAdd some special cases to make common getelementptr cases easier to read/faster
Chris Lattner [Mon, 16 Dec 2002 19:32:50 +0000 (19:32 +0000)]
Add some special cases to make common getelementptr cases easier to read/faster

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

21 years agoFinish implementation of alias list impl
Chris Lattner [Mon, 16 Dec 2002 19:31:48 +0000 (19:31 +0000)]
Finish implementation of alias list impl

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

21 years ago* Fix a gross X86 hack that was intended to avoid allocating SP and BP
Chris Lattner [Mon, 16 Dec 2002 17:44:42 +0000 (17:44 +0000)]
* Fix a gross X86 hack that was intended to avoid allocating SP and BP
* Implement register alias set support

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

21 years agoKeep the stack frame aligned.
Chris Lattner [Mon, 16 Dec 2002 17:42:40 +0000 (17:42 +0000)]
Keep the stack frame aligned.

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

21 years agoAdd support for register alias set description
Chris Lattner [Mon, 16 Dec 2002 16:39:14 +0000 (16:39 +0000)]
Add support for register alias set description

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

21 years agoAdd mechanism to select register allocator to use
Chris Lattner [Mon, 16 Dec 2002 16:15:51 +0000 (16:15 +0000)]
Add mechanism to select register allocator to use

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

21 years agoInitial checkin of "local" register allocator. Bugs are still present.
Chris Lattner [Mon, 16 Dec 2002 16:15:28 +0000 (16:15 +0000)]
Initial checkin of "local" register allocator.  Bugs are still present.

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

21 years agoTry #2 to get alias set stuff to work
Chris Lattner [Mon, 16 Dec 2002 16:14:51 +0000 (16:14 +0000)]
Try #2 to get alias set stuff to work

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

21 years agoAdd comments
Chris Lattner [Mon, 16 Dec 2002 15:57:44 +0000 (15:57 +0000)]
Add comments

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

21 years agoAdd info about register aliases, add prototype for createLocalRegisterAllocator
Chris Lattner [Mon, 16 Dec 2002 15:55:51 +0000 (15:55 +0000)]
Add info about register aliases, add prototype for createLocalRegisterAllocator

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

21 years agoAdd info about register file aliasing
Chris Lattner [Mon, 16 Dec 2002 15:55:25 +0000 (15:55 +0000)]
Add info about register file aliasing

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

21 years agoAdd information about register file aliasing
Chris Lattner [Mon, 16 Dec 2002 15:54:59 +0000 (15:54 +0000)]
Add information about register file aliasing

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

21 years agoAdd call clobber info
Chris Lattner [Mon, 16 Dec 2002 15:54:42 +0000 (15:54 +0000)]
Add call clobber info

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

21 years agoRename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator
Chris Lattner [Mon, 16 Dec 2002 14:38:13 +0000 (14:38 +0000)]
Rename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator

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

21 years agoRename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator.
Chris Lattner [Mon, 16 Dec 2002 14:37:00 +0000 (14:37 +0000)]
Rename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator.
Remvoe some dead code

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

21 years agobrg
Brian Gaeke [Mon, 16 Dec 2002 04:23:29 +0000 (04:23 +0000)]
brg

Fix some bugs in use of MBB vs. BB and iterators that are invalidated before
we use them.

Reference targetClass by enum name, not by number.

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

21 years agoUse -Wl,-x instead of -s: it is more portable, and in particular,
Vikram S. Adve [Mon, 16 Dec 2002 01:31:18 +0000 (01:31 +0000)]
Use -Wl,-x instead of -s: it is more portable, and in particular,
is needed on BSD (MacOS).
Also, use -Ldir instead of -L dir on the link line.  Same reason...

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

21 years agoSome simpliciations to the spill/reload interface
Chris Lattner [Sun, 15 Dec 2002 23:01:26 +0000 (23:01 +0000)]
Some simpliciations to the spill/reload interface

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

21 years agoSimplify PHI node elimination significantly by doing it as a prepass to
Chris Lattner [Sun, 15 Dec 2002 22:39:53 +0000 (22:39 +0000)]
Simplify PHI node elimination significantly by doing it as a prepass to
register allocation

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

21 years agoCorrect the setting of Def flags on registers that are modified!
Chris Lattner [Sun, 15 Dec 2002 22:38:47 +0000 (22:38 +0000)]
Correct the setting of Def flags on registers that are modified!

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

21 years agoVariety of small or trivial simplifications to the code, completely eliminated
Chris Lattner [Sun, 15 Dec 2002 22:19:19 +0000 (22:19 +0000)]
Variety of small or trivial simplifications to the code, completely eliminated
the dependence on PhysRegClassMap

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

21 years agoExport well known instruction opcodes usable by target independant passes
Chris Lattner [Sun, 15 Dec 2002 22:16:08 +0000 (22:16 +0000)]
Export well known instruction opcodes usable by target independant passes

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

21 years agoAdd new opIsUse method
Chris Lattner [Sun, 15 Dec 2002 22:05:02 +0000 (22:05 +0000)]
Add new opIsUse method

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

21 years agoRemove unused savePhysRegToStack method
Chris Lattner [Sun, 15 Dec 2002 21:33:51 +0000 (21:33 +0000)]
Remove unused savePhysRegToStack method

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

21 years agoLocalize a map, remove another
Chris Lattner [Sun, 15 Dec 2002 21:24:30 +0000 (21:24 +0000)]
Localize a map, remove another

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

21 years agoGive passes nice names!
Chris Lattner [Sun, 15 Dec 2002 21:13:40 +0000 (21:13 +0000)]
Give passes nice names!

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

21 years agoGive simple reg allocator a nice Pass Name
Chris Lattner [Sun, 15 Dec 2002 21:13:12 +0000 (21:13 +0000)]
Give simple reg allocator a nice Pass Name

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

21 years agoAdd a big assert making sure 2 address instructions are formed right
Chris Lattner [Sun, 15 Dec 2002 21:02:20 +0000 (21:02 +0000)]
Add a big assert making sure 2 address instructions are formed right

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

21 years agoAdd new testcase for repeated preds
Chris Lattner [Sun, 15 Dec 2002 20:52:08 +0000 (20:52 +0000)]
Add new testcase for repeated preds

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

21 years agoFix a problem that occurs when PHI nodes have multiple entries for the same predecessor
Chris Lattner [Sun, 15 Dec 2002 20:48:03 +0000 (20:48 +0000)]
Fix a problem that occurs when PHI nodes have multiple entries for the same predecessor

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

21 years agoGrab bag of minor cleanups. Export some statistics about the number of
Chris Lattner [Sun, 15 Dec 2002 20:36:09 +0000 (20:36 +0000)]
Grab bag of minor cleanups.  Export some statistics about the number of
spills and reloads emitted

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

21 years agoImplement printing of MBB arguments
Chris Lattner [Sun, 15 Dec 2002 20:35:25 +0000 (20:35 +0000)]
Implement printing of MBB arguments

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

21 years agoSimplify interfaces used by regalloc to insert code
Chris Lattner [Sun, 15 Dec 2002 20:06:35 +0000 (20:06 +0000)]
Simplify interfaces used by regalloc to insert code

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

21 years ago* Simplify code a bit by breaking the PHI node handling stuff out into a seperate
Chris Lattner [Sun, 15 Dec 2002 19:51:14 +0000 (19:51 +0000)]
* Simplify code a bit by breaking the PHI node handling stuff out into a seperate
  function from normal regalloc code
* Make the regalloc for a block a function instead of part of runOnMachineBB, which
  makes it easier to see what's going on in runOnMBB.

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

21 years agoChanges to make new TargetRegisterClass interface.
Chris Lattner [Sun, 15 Dec 2002 19:29:34 +0000 (19:29 +0000)]
Changes to make new TargetRegisterClass interface.

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

21 years agoSimplify TargetRegisterClass a bit, also eliminating virtual function call
Chris Lattner [Sun, 15 Dec 2002 19:29:14 +0000 (19:29 +0000)]
Simplify TargetRegisterClass a bit, also eliminating virtual function call
overhead

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

21 years ago* Remove some unneccesary instance variables
Chris Lattner [Sun, 15 Dec 2002 19:07:34 +0000 (19:07 +0000)]
* Remove some unneccesary instance variables
* Make allocateStackSpaceFor only allocate the right amount of space

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

21 years ago* Simplify TargetRegisterClass implementations
Chris Lattner [Sun, 15 Dec 2002 18:40:36 +0000 (18:40 +0000)]
* Simplify TargetRegisterClass implementations
* Change regclass iterators to use an extra level of pointers

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

21 years ago* Rename const_regclass_begin/end to just regclass_begin/end
Chris Lattner [Sun, 15 Dec 2002 18:40:01 +0000 (18:40 +0000)]
* Rename const_regclass_begin/end to just regclass_begin/end
* Regclass iterators need an extra level of pointerness to work right
* Pull inverse mapping code out of target description files

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

21 years agopull inverse reg class mapping into a class that is sharable and out of the
Chris Lattner [Sun, 15 Dec 2002 18:38:59 +0000 (18:38 +0000)]
pull inverse reg class mapping into a class that is sharable and out of the
target register description classes.

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

21 years agoPrune #includes
Chris Lattner [Sun, 15 Dec 2002 18:19:24 +0000 (18:19 +0000)]
Prune #includes

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

21 years agoRemove extraneous #includes, perform FIXME
Chris Lattner [Sun, 15 Dec 2002 18:15:24 +0000 (18:15 +0000)]
Remove extraneous #includes, perform FIXME

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

21 years agoNew testcase for structure argument problems.
Chris Lattner [Sun, 15 Dec 2002 17:46:18 +0000 (17:46 +0000)]
New testcase for structure argument problems.

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

21 years agoNew test to make sure I'm getting constness right
Chris Lattner [Sun, 15 Dec 2002 17:37:35 +0000 (17:37 +0000)]
New test to make sure I'm getting constness right

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

21 years agoNew testcase, courtesy of Brian Gaeke
Chris Lattner [Sun, 15 Dec 2002 17:14:32 +0000 (17:14 +0000)]
New testcase, courtesy of Brian Gaeke

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

21 years agoFix bug: Assembler/2002-12-15-GlobalResolve.ll
Chris Lattner [Sun, 15 Dec 2002 16:41:52 +0000 (16:41 +0000)]
Fix bug: Assembler/2002-12-15-GlobalResolve.ll

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

21 years agoAllow folding together two globals through type resolution
Chris Lattner [Sun, 15 Dec 2002 16:32:21 +0000 (16:32 +0000)]
Allow folding together two globals through type resolution

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

21 years agoplanes is not spelled with an O
Chris Lattner [Sun, 15 Dec 2002 16:20:23 +0000 (16:20 +0000)]
planes is not spelled with an O

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

21 years agoTestcase identified by Brian Gaeke that breaks the C frontend...
Chris Lattner [Sun, 15 Dec 2002 15:52:03 +0000 (15:52 +0000)]
Testcase identified by Brian Gaeke that breaks the C frontend...

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

21 years agoFix borkness with not using MachineBasicBlocks in PHI nodes
Chris Lattner [Sun, 15 Dec 2002 08:02:51 +0000 (08:02 +0000)]
Fix borkness with not using MachineBasicBlocks in PHI nodes

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

21 years agoAdd support to cast from a bool type
Chris Lattner [Sun, 15 Dec 2002 08:02:15 +0000 (08:02 +0000)]
Add support to cast from a bool type
Add support for boolean constants
add getClassB method

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

21 years agoUse MachineOperand::isFoo methods instead of our own global functions
Chris Lattner [Sun, 15 Dec 2002 08:01:39 +0000 (08:01 +0000)]
Use MachineOperand::isFoo methods instead of our own global functions

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

21 years agoAdd capability to have a MachineBasicBlock as an operand to a MachineInstr
Chris Lattner [Sun, 15 Dec 2002 08:01:02 +0000 (08:01 +0000)]
Add capability to have a MachineBasicBlock as an operand to a MachineInstr
Add a bunch of methods to MachineOperand is* to reduce usage of MO_foo

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

21 years agoNew testcase for bool support
Chris Lattner [Sun, 15 Dec 2002 07:55:43 +0000 (07:55 +0000)]
New testcase for bool support

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

21 years agoFix a huge performance problem in reassociate by introducing a
Chris Lattner [Sun, 15 Dec 2002 03:56:00 +0000 (03:56 +0000)]
Fix a huge performance problem in reassociate by introducing a
rank map cache for instruction ranks

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

21 years agoMinor changes:
Chris Lattner [Sun, 15 Dec 2002 03:49:50 +0000 (03:49 +0000)]
Minor changes:
  * Reword comment to make more clear
  * Don't print out BB's after modification made
  * Don't delete and new an instruction when we need to move something, just move it.

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

21 years agoMake stuff compiled with gccld not dump into the debugger if there's a problem
Chris Lattner [Sat, 14 Dec 2002 21:28:32 +0000 (21:28 +0000)]
Make stuff compiled with gccld not dump into the debugger if there's a problem

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

21 years agoPass command line arguments to main
Chris Lattner [Fri, 13 Dec 2002 16:48:57 +0000 (16:48 +0000)]
Pass command line arguments to main

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

21 years agoAdd statistic
Chris Lattner [Fri, 13 Dec 2002 15:28:42 +0000 (15:28 +0000)]
Add statistic

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

21 years agoTest indirect call
Chris Lattner [Fri, 13 Dec 2002 14:15:20 +0000 (14:15 +0000)]
Test indirect call

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

21 years agoImplement indirect function calls
Chris Lattner [Fri, 13 Dec 2002 14:13:27 +0000 (14:13 +0000)]
Implement indirect function calls

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

21 years agoMake function code generation printing debug-only.
Misha Brukman [Fri, 13 Dec 2002 13:16:14 +0000 (13:16 +0000)]
Make function code generation printing debug-only.

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

21 years agoMade status output debug-only (for testing diffs against lli).
Misha Brukman [Fri, 13 Dec 2002 13:15:36 +0000 (13:15 +0000)]
Made status output debug-only (for testing diffs against lli).

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

21 years agoFix bork in doMultiply
Chris Lattner [Fri, 13 Dec 2002 13:07:42 +0000 (13:07 +0000)]
Fix bork in doMultiply

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

21 years agoAdd sanity checks
Chris Lattner [Fri, 13 Dec 2002 13:04:04 +0000 (13:04 +0000)]
Add sanity checks

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

21 years agoFixed a bug where moves due to phis were being neglected.
Misha Brukman [Fri, 13 Dec 2002 12:33:31 +0000 (12:33 +0000)]
Fixed a bug where moves due to phis were being neglected.

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

21 years agoNew testcase
Chris Lattner [Fri, 13 Dec 2002 12:10:16 +0000 (12:10 +0000)]
New testcase

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

21 years agoCleaned up the code: factored out switch/case into a separate function, put
Misha Brukman [Fri, 13 Dec 2002 12:00:06 +0000 (12:00 +0000)]
Cleaned up the code: factored out switch/case into a separate function, put
constants in an array for quick lookup. Stole the idea from elsewhere in
Jello.

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

21 years agoNeed to insert all moves due to PHI nodes before *ALL* jumps in a predecessor
Misha Brukman [Fri, 13 Dec 2002 11:55:59 +0000 (11:55 +0000)]
Need to insert all moves due to PHI nodes before *ALL* jumps in a predecessor
basic block, as there could be multiple.

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

21 years agoInsert phi code at top of block
Chris Lattner [Fri, 13 Dec 2002 11:52:34 +0000 (11:52 +0000)]
Insert phi code at top of block

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

21 years agolib/Target/X86/InstSelectSimple.cpp:
Brian Gaeke [Fri, 13 Dec 2002 11:39:18 +0000 (11:39 +0000)]
lib/Target/X86/InstSelectSimple.cpp:

The MachineBasicBlock variable name patrol hereby fines Chris Lattner
one bag of nachos, for shadowing global names while his license to do so
was under suspension.

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

21 years agoThis should be more correct: invalidates physical registers that are used in
Misha Brukman [Fri, 13 Dec 2002 11:33:22 +0000 (11:33 +0000)]
This should be more correct: invalidates physical registers that are used in
an instruction to avoid using them to allocate to other virtual registers.

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

21 years agoImplement cast bool to X
Chris Lattner [Fri, 13 Dec 2002 11:31:59 +0000 (11:31 +0000)]
Implement cast bool to X

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