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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Brian Gaeke [Fri, 13 Dec 2002 11:22:48 +0000 (11:22 +0000)]
Rename all BMI MachineBasicBlock operands to MBB.
Try to mess around with emitGEPOperation's elementSizeReg to make it work,
again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5011
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Dec 2002 10:50:40 +0000 (10:50 +0000)]
Finish up iterator stuph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5009
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 13 Dec 2002 10:43:09 +0000 (10:43 +0000)]
Treat longs as ints => pretend they're all 32-bit values and squeeze them into
32-bit registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5008
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 13 Dec 2002 10:42:31 +0000 (10:42 +0000)]
Fixed bug with running out of registers. Also, reinstated namespace which
disappeared during the last checkin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5007
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Dec 2002 10:13:45 +0000 (10:13 +0000)]
Return success on success
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5006
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Dec 2002 10:12:50 +0000 (10:12 +0000)]
Test more phi stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5005
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Dec 2002 10:09:43 +0000 (10:09 +0000)]
Code gen phi's correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5004
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Dec 2002 09:59:26 +0000 (09:59 +0000)]
Print X86 PHI nodes in a sane manner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5003
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 13 Dec 2002 09:54:36 +0000 (09:54 +0000)]
This should handle register allocating PHI nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5002
91177308-0d34-0410-b5e6-
96231b3b80d8