Chris Lattner [Wed, 25 Dec 2002 05:09:01 +0000 (05:09 +0000)]
Add printer support for Pseudo instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5150
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:08:03 +0000 (05:08 +0000)]
Initial support for FP registers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5149
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:07:09 +0000 (05:07 +0000)]
New simpler spill interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5148
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:06:43 +0000 (05:06 +0000)]
Adjustments to match new simpler spill interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5147
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:06:21 +0000 (05:06 +0000)]
Free machine code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5146
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:05:46 +0000 (05:05 +0000)]
Adjust to simpler spill interface
Only spill and reload caller saved registers that are actually modified.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5145
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:04:20 +0000 (05:04 +0000)]
Adjustments to work with the simpler spill interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5144
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:03:22 +0000 (05:03 +0000)]
Remove dependency on SSARegMap.h by MachineFunction.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5143
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:02:00 +0000 (05:02 +0000)]
Simplify spill interface methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5142
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:01:46 +0000 (05:01 +0000)]
Add comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5141
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:01:18 +0000 (05:01 +0000)]
Add abstract frame index capability
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5140
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:01:05 +0000 (05:01 +0000)]
Remove default ctor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5139
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:00:49 +0000 (05:00 +0000)]
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5138
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Dec 2002 05:00:16 +0000 (05:00 +0000)]
Remove dependency on SSARegMap.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5137
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:44:34 +0000 (00:44 +0000)]
Fix compilation on GCC 3.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5136
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:44:26 +0000 (00:44 +0000)]
Don't try to buidl jello
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5135
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:39:16 +0000 (00:39 +0000)]
Fixes to compile with GCC 3.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5134
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:14:25 +0000 (00:14 +0000)]
Jello is now part of LLI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5133
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:04:55 +0000 (00:04 +0000)]
Substantial fixes to live range handling, fixing several problems, getting
strtol to not miscompile, and fixing bug: 2002-12-23-LocalRAProblem.llx
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5132
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:04:01 +0000 (00:04 +0000)]
Changes to allow for a configurable target machine that allows big endian and/or long pointer operation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5131
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:03:11 +0000 (00:03 +0000)]
Changes to compile with GCC 2.96
Changes to support configurable pointer size and endianness
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5130
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:02:38 +0000 (00:02 +0000)]
Sparc is not little endian
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5129
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:02:17 +0000 (00:02 +0000)]
Allow the target machines to specify endianness and pointer size
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5128
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:01:22 +0000 (00:01 +0000)]
Initial checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5127
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 24 Dec 2002 00:01:05 +0000 (00:01 +0000)]
Initial checkin of new LLI with JIT compiler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5126
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:59:41 +0000 (23:59 +0000)]
Substantial changes to refactor LLI to incorporate both the Jello JIT and
the traditional LLI interpreter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5125
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:55:01 +0000 (23:55 +0000)]
X86 target machine is now parameterizable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5124
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:51:30 +0000 (23:51 +0000)]
Testcases for bugfixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5123
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:51:19 +0000 (23:51 +0000)]
Jello is now part of LLI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5122
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:50:35 +0000 (23:50 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5121
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:50:16 +0000 (23:50 +0000)]
New files for miscompilation detection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5120
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:49:59 +0000 (23:49 +0000)]
Implement the start of the miscompilation detection stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5119
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:47:39 +0000 (23:47 +0000)]
Remove temp files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5118
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:47:20 +0000 (23:47 +0000)]
Jello is going away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5117
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:46:55 +0000 (23:46 +0000)]
Fix compilation on gcc 2.96
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5116
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:46:31 +0000 (23:46 +0000)]
Add definition for the bswap instruction
*** FIX: the encoding of the SUB instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5115
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:46:00 +0000 (23:46 +0000)]
Add support for the bswap instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5114
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Dec 2002 23:44:04 +0000 (23:44 +0000)]
Fix compilation on GCC 2.96
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5113
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Sun, 22 Dec 2002 18:53:23 +0000 (18:53 +0000)]
brg
Add statistic for number of bytes of data area initialized.
We used this statistic in collecting data for the paper, but I forgot
to commit it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5112
91177308-0d34-0410-b5e6-
96231b3b80d8
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
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
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
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
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
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
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
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
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
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