Chris Lattner [Sat, 20 Dec 2003 10:12:17 +0000 (10:12 +0000)]
Fix memory leak in the stackifier, due to the machinebasicblocks not holding
instructions on an ilist
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10556
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 09:58:55 +0000 (09:58 +0000)]
Finegrainify namespacification
Minor cleanups to killer pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10555
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 09:17:40 +0000 (09:17 +0000)]
Hoist some sparc specific code into the sparc target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10554
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 09:17:07 +0000 (09:17 +0000)]
* Finegrainify namespacification
* Move sparc specific code out of generic code
* Eliminate the getOffset() method which made INVALID_FRAME_OFFSET
necessary, which made pulling in MAX_INT as a sentinal necessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10553
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 09:15:21 +0000 (09:15 +0000)]
Remove sparc specific passes from public headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10552
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 09:15:01 +0000 (09:15 +0000)]
Remove a horrible API
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10551
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 03:42:11 +0000 (03:42 +0000)]
PR135 is now finally fixed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10550
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 03:36:47 +0000 (03:36 +0000)]
Implement PR135, lazy emission of global variables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10549
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 03:35:50 +0000 (03:35 +0000)]
Cleanups to implement PR135
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10548
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 02:45:37 +0000 (02:45 +0000)]
Simple refactorings to prepare for lazy global emission
Also, add a stat for the number of globals emitted
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10547
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 02:45:16 +0000 (02:45 +0000)]
Simple refactorings to prepare for lazy global emission
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10546
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 02:03:14 +0000 (02:03 +0000)]
A minor cleanup for better encapsulation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10545
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 01:46:27 +0000 (01:46 +0000)]
Cleanup the JIT as per PR176. This renames the VM class to JIT, and merges the
VM.cpp and JIT.cpp files into JIT.cpp. This also splits some nasty code out
into TargetSelect.cpp so that people hopefully won't notice it. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10544
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 01:45:17 +0000 (01:45 +0000)]
Update for changes in the JIT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10543
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Dec 2003 01:22:19 +0000 (01:22 +0000)]
Rip JIT specific stuff out of TargetMachine, as per PR176
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10542
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 19:48:43 +0000 (19:48 +0000)]
Eliminate a spurious warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10540
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 09:08:34 +0000 (09:08 +0000)]
Fix ADCE/2003-12-19-MergeReturn.llx
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10539
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 09:08:15 +0000 (09:08 +0000)]
New testcase for missed optimization
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10538
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 08:43:07 +0000 (08:43 +0000)]
Expand on the AliasSetTracker a bit, so I can remember this next time I come back to it. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10537
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 08:18:16 +0000 (08:18 +0000)]
Remove the wierd "Operands" loop, by traversing basicblocks in reverse order
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10536
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 07:51:46 +0000 (07:51 +0000)]
Add support for people calling main recursively
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10535
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 07:22:45 +0000 (07:22 +0000)]
Implement LICM/sink_multiple.ll, by sinking all possible instructions in the
loop before hoisting any.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10534
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 06:54:37 +0000 (06:54 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10533
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 06:31:56 +0000 (06:31 +0000)]
Turn QOI section into CQ section (QUI can be added later if needed)
Add PR187
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10532
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 06:27:08 +0000 (06:27 +0000)]
Generalize a special case to fix PR187
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10531
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 05:58:40 +0000 (05:58 +0000)]
Factor code out into the Utils library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10530
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 05:56:28 +0000 (05:56 +0000)]
Add new function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10529
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 03:47:31 +0000 (03:47 +0000)]
If -enable-linscan is specified, add ENABLE_LINEARSCAN=1 to the make commandline
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10527
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 19 Dec 2003 03:34:46 +0000 (03:34 +0000)]
Update template
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10525
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 22:40:24 +0000 (22:40 +0000)]
Remove TwoAddressInstruction from the public headers and add an ID
instead, since this pass doesn't expose any state to its users.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10520
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 18 Dec 2003 20:57:48 +0000 (20:57 +0000)]
Add install target for libraries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10519
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 18 Dec 2003 20:25:31 +0000 (20:25 +0000)]
Prune some #includes
Add a statistic for # reloads
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10518
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 18 Dec 2003 17:19:19 +0000 (17:19 +0000)]
Reverted back to previous revision - this was previously merged
according to the CVS log messages.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10517
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 18 Dec 2003 16:43:17 +0000 (16:43 +0000)]
Merged in RELEASE_11.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10516
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 13:15:02 +0000 (13:15 +0000)]
Modify linear scan register allocator to use the two-address
instruction pass. This also fixes all remaining bugs for this new
allocator to pass all tests under test/Programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10515
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 13:12:18 +0000 (13:12 +0000)]
Fix bug in reserved registers. DH actually aliases DX and EDX which
are not reserved registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10514
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 13:08:52 +0000 (13:08 +0000)]
Modify local register allocator to use the two-address instruction pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10513
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 13:06:04 +0000 (13:06 +0000)]
Add TwoAddressInstructionPass to handle instructions that have two or
more operands and the two first operands are constrained to be the
same. The pass takes an instruction of the form:
a = b op c
and transforms it into:
a = b
a = a op c
and also preserves live variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10512
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 08:56:11 +0000 (08:56 +0000)]
Rename LiveIntervals::expired() to LiveIntervals::expiredAt().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10511
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 08:53:43 +0000 (08:53 +0000)]
When a variable is killed and redifined in a basic block only one
killing instruction is tracked. This causes the LiveIntervals to
create bogus intervals. The workaound is to add a range to the
interval from the redefinition to the end of the basic block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10510
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 18 Dec 2003 08:48:48 +0000 (08:48 +0000)]
Handle multiple virtual register definitions gracefully.
Move some of the longer LiveIntervals::Interval method out of the
header and add debug information to them. Fix bug and simplify range
merging code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10509
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 18 Dec 2003 08:16:25 +0000 (08:16 +0000)]
add boog
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10508
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 18 Dec 2003 08:12:32 +0000 (08:12 +0000)]
When we delete instructions from the loop, make sure to remove them from the
AliasSetTracker as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10507
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 18 Dec 2003 08:11:56 +0000 (08:11 +0000)]
Add a new AliassetTracker::remove method. Because we need to be able to remove
a pointer from an AliasSet, maintain the pointer values on a doubly linked
list instead of a singly linked list, to permit efficient removal from the
middle of the list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10506
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 18 Dec 2003 06:40:22 +0000 (06:40 +0000)]
Check in patch that Reid submitted
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10505
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 23:10:49 +0000 (23:10 +0000)]
Fix the links to match our 'llvm' namespace in doxygen-generated docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10504
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 22:08:20 +0000 (22:08 +0000)]
* Converted C-style comments to C++
* Doxygenified comments
* Reordered #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10503
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 22:06:28 +0000 (22:06 +0000)]
Reordered #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10502
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 22:06:08 +0000 (22:06 +0000)]
Doxygenified some comments, reduced extraneous space.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10501
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 22:04:00 +0000 (22:04 +0000)]
Reorganized the Sparc backend to be more modular -- each different
implementation of a Target{RegInfo, InstrInfo, Machine, etc} now has a separate
header and a separate implementation file.
This means that instead of a massive SparcInternals.h that forces a
recompilation of the whole target whenever a minor detail is changed, you should
only recompile a few files.
Note that SparcInternals.h is still around; its contents should be minimized.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10500
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 17 Dec 2003 18:46:49 +0000 (18:46 +0000)]
Since we are now in the 'llvm' namespace, the mangled C++ name of structs
and hence the links, all change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10495
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Wed, 17 Dec 2003 18:15:04 +0000 (18:15 +0000)]
Added Stacker to Reid Spencer's list of contributions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10494
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 17 Dec 2003 00:18:18 +0000 (00:18 +0000)]
Make getObjectType() smarter about ranlibbed Mac OS X archives.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10493
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Tue, 16 Dec 2003 22:57:30 +0000 (22:57 +0000)]
Disable __attribute__((weak)) on Mac OS X and other lame platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10489
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 16 Dec 2003 22:33:55 +0000 (22:33 +0000)]
Add a faq entry for the demo page
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10488
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Tue, 16 Dec 2003 21:55:45 +0000 (21:55 +0000)]
Fix typo in comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10487
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 15 Dec 2003 23:10:25 +0000 (23:10 +0000)]
There is no reason to add -load support to LLC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10483
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 15 Dec 2003 22:48:12 +0000 (22:48 +0000)]
Added info about PR186: weak linkage on memory functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10479
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 15 Dec 2003 22:32:50 +0000 (22:32 +0000)]
Make all memory functions have weak linkage so that they can be overridden with
custom memory-management implementations (e.g., bash).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10478
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 15 Dec 2003 17:34:02 +0000 (17:34 +0000)]
Fix for PR185 & IndVarsSimplify/2003-12-15-Crash.llx
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10473
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 15 Dec 2003 17:33:41 +0000 (17:33 +0000)]
New testcase, for PR185
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10471
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 15 Dec 2003 06:39:18 +0000 (06:39 +0000)]
This header is dead
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10470
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Mon, 15 Dec 2003 04:55:38 +0000 (04:55 +0000)]
Change preserve all claim to just preserve live variables and phielimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10469
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 15 Dec 2003 00:03:53 +0000 (00:03 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10468
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 23:57:39 +0000 (23:57 +0000)]
Refactor code just a little bit, allowing us to implement TailCallElim/return_constant.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10467
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 23:39:34 +0000 (23:39 +0000)]
new test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10466
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 23:25:48 +0000 (23:25 +0000)]
Finegrainify namespacification
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10465
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 21:35:53 +0000 (21:35 +0000)]
Finegrainify namespacification
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10464
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 21:27:33 +0000 (21:27 +0000)]
Finegrainify namespacification
Make the Timer code give correct user/system/user+system times when -track-memory is enabled
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10463
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sun, 14 Dec 2003 13:30:19 +0000 (13:30 +0000)]
I wonder how this didn't cause any tests to fail...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10462
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sun, 14 Dec 2003 13:24:17 +0000 (13:24 +0000)]
Change interface of MachineOperand as follows:
a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse()
b) add isUse(), isDef()
c) rename opHiBits32() to isHiBits32(),
opLoBits32() to isLoBits32(),
opHiBits64() to isHiBits64(),
opLoBits64() to isLoBits64().
This results to much more readable code, for example compare
"op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used
very often in the code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10461
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sun, 14 Dec 2003 10:14:23 +0000 (10:14 +0000)]
Change preserve all claim to just preserve live variables and phielimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10460
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 05:03:43 +0000 (05:03 +0000)]
Rev the release notes to 1.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 04:52:31 +0000 (04:52 +0000)]
Do not promote volatile alias sets into registers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10458
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 04:52:11 +0000 (04:52 +0000)]
Finegrainify namespacification
Add capability to represent volatile AliasSet's
Propagate this information from loads&stores into the aliassets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 04:51:34 +0000 (04:51 +0000)]
Add capability to represent volatile AliasSet's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10456
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 14 Dec 2003 04:46:07 +0000 (04:46 +0000)]
Testcase for PR179
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10455
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 11:58:10 +0000 (11:58 +0000)]
When reserving a preallocated register spill the aliases of this
register too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10450
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 11:11:02 +0000 (11:11 +0000)]
Ignore non-allocatable physical registers in live interval analysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10449
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 05:50:19 +0000 (05:50 +0000)]
Expire any active intervals left when register allocation is done.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10448
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 05:48:57 +0000 (05:48 +0000)]
Add instruction numbers to debugging output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10447
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 05:36:22 +0000 (05:36 +0000)]
Add a floating point killer pass. This pass runs before register
allocaton on the X86 to add information to the machine code denoting
that our floating point stackifier cannot handle virtual point
register that are alive across basic blocks. This pass adds an
implicit def of all virtual floating point register at the end of each
basic block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10446
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 05:26:39 +0000 (05:26 +0000)]
Handle explicit physical register defs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10445
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 13 Dec 2003 01:20:58 +0000 (01:20 +0000)]
Remove unecessary if statements when looping on ImplicitDefs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 21:33:08 +0000 (21:33 +0000)]
Try rewording stuff talking about unwinding. Hopefully it will make llvm sound less bad, and still make John happy. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10439
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 21:22:16 +0000 (21:22 +0000)]
Link to lists, incorporate feedback from Tanya
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10438
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 12 Dec 2003 20:15:23 +0000 (20:15 +0000)]
Updated configure script so that it does not configure llvm/project
directories that do not contain a configure script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10437
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 12 Dec 2003 20:09:33 +0000 (20:09 +0000)]
Don't configure directories that don't have a configure script (i.e Stacker).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10436
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 12 Dec 2003 19:57:48 +0000 (19:57 +0000)]
Modified cast so that it converts the int to a long before casting to
a pointer. This evades a warning emitted by GCC when we cast from
unsigned int (32 bit) to void * (64 bit) on SparcV9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10435
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 12 Dec 2003 19:54:20 +0000 (19:54 +0000)]
Fixed some minor typos.
Moved the new gccld feature to be in the list of enhancements.
Re-worded information on SPEC 2000 and Sparc support to try to make them
more accurate and precise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10434
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 12 Dec 2003 15:38:06 +0000 (15:38 +0000)]
Dynamically get the right-sized member of a GenericValue to hold a size_t, and
use it to return the result of strlen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10433
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 07:26:25 +0000 (07:26 +0000)]
PR177 is no longer among the open
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10432
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 07:12:02 +0000 (07:12 +0000)]
Implement the ExecutionEngine::getPointerToFunctionOrStub by forwarding the
request on to the TargetMachine if it supports the getJITStubForFunction method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10431
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 07:11:18 +0000 (07:11 +0000)]
Implement the TargetMachine::getJITStubForFunction method for X86, finegrainify
namespacification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10430
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 07:10:32 +0000 (07:10 +0000)]
Add new getJITStubForFunction method, which may optionally be implemented by
targets for better performance.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10429
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 06:31:42 +0000 (06:31 +0000)]
Doxygenify comments, remove extraneous #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10428
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 12 Dec 2003 05:52:39 +0000 (05:52 +0000)]
Note about bytecode format
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10427
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 12 Dec 2003 05:13:05 +0000 (05:13 +0000)]
Since we are using a gep_type_iterator, we apparently must get the type
index by using I.getOperand() here. This was failing an assertion on
basically every struct access.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10426
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 12 Dec 2003 05:06:09 +0000 (05:06 +0000)]
Use uintptr_t for pointer values in the ExecutionEngine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10425
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 12 Dec 2003 04:58:13 +0000 (04:58 +0000)]
Fix typo in comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10424
91177308-0d34-0410-b5e6-
96231b3b80d8