oota-llvm.git
20 years agoMerged in RELEASE_11.
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

20 years agoModify linear scan register allocator to use the two-address
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

20 years agoFix bug in reserved registers. DH actually aliases DX and EDX which
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

20 years agoModify local register allocator to use the two-address instruction pass.
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

20 years agoAdd TwoAddressInstructionPass to handle instructions that have two or
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

20 years agoRename LiveIntervals::expired() to LiveIntervals::expiredAt().
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

20 years agoWhen a variable is killed and redifined in a basic block only one
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

20 years agoHandle multiple virtual register definitions gracefully.
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

20 years agoadd boog
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

20 years agoWhen we delete instructions from the loop, make sure to remove them from the
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

20 years agoAdd a new AliassetTracker::remove method. Because we need to be able to remove
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

20 years agoCheck in patch that Reid submitted
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

20 years agoFix the links to match our 'llvm' namespace in doxygen-generated docs.
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

20 years ago* Converted C-style comments to C++
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

20 years agoReordered #includes.
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

20 years agoDoxygenified some comments, reduced extraneous space.
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

20 years agoReorganized the Sparc backend to be more modular -- each different
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

20 years agoSince we are now in the 'llvm' namespace, the mangled C++ name of structs
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

20 years agoAdded Stacker to Reid Spencer's list of contributions.
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

20 years agoMake getObjectType() smarter about ranlibbed Mac OS X archives.
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

20 years agoDisable __attribute__((weak)) on Mac OS X and other lame platforms.
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

20 years agoAdd a faq entry for the demo page
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

20 years agoFix typo in comment.
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

20 years agoThere is no reason to add -load support to LLC
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

20 years agoAdded info about PR186: weak linkage on memory functions.
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

20 years agoMake all memory functions have weak linkage so that they can be overridden with
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

20 years agoFix for PR185 & IndVarsSimplify/2003-12-15-Crash.llx
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

20 years agoNew testcase, for PR185
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

20 years agoThis header is dead
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

20 years agoChange preserve all claim to just preserve live variables and phielimination.
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

20 years agoNew testcase
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

20 years agoRefactor code just a little bit, allowing us to implement TailCallElim/return_constant.ll
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

20 years agonew test
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

20 years agoFinegrainify namespacification
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

20 years agoFinegrainify namespacification
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

20 years agoFinegrainify namespacification
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

20 years agoI wonder how this didn't cause any tests to fail...
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

20 years agoChange interface of MachineOperand as follows:
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

20 years agoChange preserve all claim to just preserve live variables and phielimination.
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

20 years agoRev the release notes to 1.2
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

20 years agoDo not promote volatile alias sets into registers
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

20 years agoFinegrainify namespacification
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

20 years agoAdd capability to represent volatile AliasSet's
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

20 years agoTestcase for PR179
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

20 years agoWhen reserving a preallocated register spill the aliases of this
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

20 years agoIgnore non-allocatable physical registers in live interval analysis.
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

20 years agoExpire any active intervals left when register allocation is done.
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

20 years agoAdd instruction numbers to debugging output.
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

20 years agoAdd a floating point killer pass. This pass runs before register
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

20 years agoHandle explicit physical register defs.
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

20 years agoRemove unecessary if statements when looping on ImplicitDefs.
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

20 years agoTry rewording stuff talking about unwinding. Hopefully it will make llvm sound less...
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

20 years agoLink to lists, incorporate feedback from Tanya
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

20 years agoUpdated configure script so that it does not configure llvm/project
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

20 years agoDon't configure directories that don't have a configure script (i.e Stacker).
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

20 years agoModified cast so that it converts the int to a long before casting to
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

20 years agoFixed some minor typos.
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

20 years agoDynamically get the right-sized member of a GenericValue to hold a size_t, and
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

20 years agoPR177 is no longer among the open
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

20 years agoImplement the ExecutionEngine::getPointerToFunctionOrStub by forwarding the
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

20 years agoImplement the TargetMachine::getJITStubForFunction method for X86, finegrainify
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

20 years agoAdd new getJITStubForFunction method, which may optionally be implemented by
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

20 years agoDoxygenify comments, remove extraneous #include
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

20 years agoNote about bytecode format
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

20 years agoSince we are using a gep_type_iterator, we apparently must get the type
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

20 years agoUse uintptr_t for pointer values in the ExecutionEngine.
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

20 years agoFix typo in comment
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

20 years agoThese aren't bugs, don't phrase them like they are.
Chris Lattner [Fri, 12 Dec 2003 04:56:02 +0000 (04:56 +0000)]
These aren't bugs, don't phrase them like they are.

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

20 years agoI'm a spaz
Chris Lattner [Fri, 12 Dec 2003 04:51:00 +0000 (04:51 +0000)]
I'm a spaz

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

20 years agoAdd note about Stacker, duh!
Chris Lattner [Fri, 12 Dec 2003 04:45:09 +0000 (04:45 +0000)]
Add note about Stacker, duh!

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

20 years agoBreak lines and add space after ':' to be consistent in layout.
Misha Brukman [Fri, 12 Dec 2003 04:37:31 +0000 (04:37 +0000)]
Break lines and add space after ':' to be consistent in layout.

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

20 years agoMore updates for the release
Chris Lattner [Fri, 12 Dec 2003 04:25:33 +0000 (04:25 +0000)]
More updates for the release

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

20 years agoThrow better error messages, by calling strerror(errno) when we
Brian Gaeke [Fri, 12 Dec 2003 00:47:44 +0000 (00:47 +0000)]
Throw better error messages, by calling strerror(errno) when we
get an error inside the bytecode reader.

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

20 years agoAdd an assertion to make sure we are at least getting argv[0] right.
Brian Gaeke [Fri, 12 Dec 2003 00:47:19 +0000 (00:47 +0000)]
Add an assertion to make sure we are at least getting argv[0] right.
Use a clearer error message when we fail to load a program.

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

20 years agoUpdate release notes for PR86 and C++ support
Chris Lattner [Thu, 11 Dec 2003 23:31:21 +0000 (23:31 +0000)]
Update release notes for PR86 and C++ support

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

20 years agoFactor out some duplicated code, implement the rest of the cases in
Chris Lattner [Thu, 11 Dec 2003 23:20:16 +0000 (23:20 +0000)]
Factor out some duplicated code, implement the rest of the cases in
BasicAA/2003-12-11-ConstExprGEP.ll

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

20 years agoRename variable to avoid confusing it with the global G
Chris Lattner [Thu, 11 Dec 2003 22:49:32 +0000 (22:49 +0000)]
Rename variable to avoid confusing it with the global G

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

20 years agoFix PR86. This makes basicaa _SIGNIFICANLY_ more aggressive with getelementptr's
Chris Lattner [Thu, 11 Dec 2003 22:44:13 +0000 (22:44 +0000)]
Fix PR86.  This makes basicaa _SIGNIFICANLY_ more aggressive with getelementptr's

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

20 years agoFix LICM/2003-12-11-SinkingToPHI.ll, and quite possibly all of the other known proble...
Chris Lattner [Thu, 11 Dec 2003 22:23:32 +0000 (22:23 +0000)]
Fix LICM/2003-12-11-SinkingToPHI.ll, and quite possibly all of the other known problems in the universe.

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

20 years agoNew testcase that LICM is breaking crafty on
Chris Lattner [Thu, 11 Dec 2003 22:15:11 +0000 (22:15 +0000)]
New testcase that LICM is breaking crafty on

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

20 years agoFinegrainify namespacification
Chris Lattner [Thu, 11 Dec 2003 21:48:18 +0000 (21:48 +0000)]
Finegrainify namespacification
Add new -print-cfg-only pass

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

20 years agoverifyFunction depends on dominator info, which levelraise does not declare
Chris Lattner [Thu, 11 Dec 2003 21:47:37 +0000 (21:47 +0000)]
verifyFunction depends on dominator info, which levelraise does not declare
that it needs.  This is pretty scary code!  This fixes

Regression.Transforms.LevelRaise.2002-07-16-SourceAndDestCrash
Regression.Transforms.LevelRaise.2002-07-31-AssertionFailure

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

20 years agoFix test that was failing because we were optimizing the program better than expected :)
Chris Lattner [Thu, 11 Dec 2003 21:06:43 +0000 (21:06 +0000)]
Fix test that was failing because we were optimizing the program better than expected :)

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

20 years agoNew testcase for PR86
Chris Lattner [Thu, 11 Dec 2003 19:16:30 +0000 (19:16 +0000)]
New testcase for PR86

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

20 years agoRun tailcall elimination in a more logical place
Chris Lattner [Thu, 11 Dec 2003 17:50:32 +0000 (17:50 +0000)]
Run tailcall elimination in a more logical place

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

20 years agoFix a glaring bug
Chris Lattner [Thu, 11 Dec 2003 06:06:28 +0000 (06:06 +0000)]
Fix a glaring bug

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

20 years agoRealize the gep P, <zeros> must aliases P.
Chris Lattner [Thu, 11 Dec 2003 06:02:00 +0000 (06:02 +0000)]
Realize the gep P, <zeros> must aliases P.
This is a partial fix for PR 86

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

20 years agoWith Brian's change to AA.h we can now clean out this uglyness
Chris Lattner [Thu, 11 Dec 2003 05:44:59 +0000 (05:44 +0000)]
With Brian's change to AA.h we can now clean out this uglyness

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

20 years agoIncludeFile hack to pull in BasicValueNumbering whenever ValueNumbering.h
Brian Gaeke [Thu, 11 Dec 2003 05:05:56 +0000 (05:05 +0000)]
IncludeFile hack to pull in BasicValueNumbering whenever ValueNumbering.h
is included.

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

20 years agoIncludeFile hack to pull in BasicAliasAnalysis whenever AliasAnalysis.h
Brian Gaeke [Thu, 11 Dec 2003 05:05:02 +0000 (05:05 +0000)]
IncludeFile hack to pull in BasicAliasAnalysis whenever AliasAnalysis.h
is included.

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

20 years agoSeparate out target for cleaning up qmtest garbage.
Brian Gaeke [Thu, 11 Dec 2003 04:48:38 +0000 (04:48 +0000)]
Separate out target for cleaning up qmtest garbage.

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

20 years agoAdd more fixed bugs. Keep llvm core section sorted by pr#. (Is that ok?)
Brian Gaeke [Thu, 11 Dec 2003 04:40:58 +0000 (04:40 +0000)]
Add more fixed bugs. Keep llvm core section sorted by pr#. (Is that ok?)

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

20 years agoStop laughing Misha
Chris Lattner [Thu, 11 Dec 2003 00:58:34 +0000 (00:58 +0000)]
Stop laughing Misha

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

20 years agoIn getObjectType(), doxygenify comment, and take a pointer to the
Brian Gaeke [Thu, 11 Dec 2003 00:38:04 +0000 (00:38 +0000)]
In getObjectType(), doxygenify comment, and take a pointer to the
beginning of the archive member data as an argument.

Get rid of ParseLongFilenameSection(), which is dead.

In ReadArchiveBuffer(), implement support for 4.4BSD/MacOSX long filenames.
This is kind of invasive, because they prepend the long filename to the archive
member data, and then lie about the size. So we have to keep track of the real
size.

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

20 years agoTurn off "attribute weak" to pacify Mac OS X's system compiler, which prints a
Brian Gaeke [Thu, 11 Dec 2003 00:24:36 +0000 (00:24 +0000)]
Turn off "attribute weak" to pacify Mac OS X's system compiler, which prints a
warning whenever it sees it.

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

20 years agoFix typo in comment. Add prototype for getConstantExprValue().
Brian Gaeke [Thu, 11 Dec 2003 00:23:28 +0000 (00:23 +0000)]
Fix typo in comment.  Add prototype for getConstantExprValue().

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

20 years agoAdd support for --debug-only=interpreter, to print out instrs before
Brian Gaeke [Thu, 11 Dec 2003 00:22:59 +0000 (00:22 +0000)]
Add support for --debug-only=interpreter, to print out instrs before
interpreting them.

Move support for getting the value of a ConstantExpr into
getConstantExprValue(), and add support for the rest of the different
kinds of ConstantExprs.  (I don't think I like ConstantExprs!)
This requires separate procedures executeShlInst() and executeShrInst().

Reduce the number of references to TheEE.

Get rid of an old comment mentioning annotations.

Fix exitCalled(), which was crashing the Interpreter. This was a
leftover from the return-value code refactoring.

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

20 years agoThis appears to fix Bug 172 and does not break any other feature tests or
John Criswell [Wed, 10 Dec 2003 22:51:41 +0000 (22:51 +0000)]
This appears to fix Bug 172 and does not break any other feature tests or
regression tests.

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

20 years agoFix bug: LICM/sink_multiple_exits.ll
Chris Lattner [Wed, 10 Dec 2003 22:35:56 +0000 (22:35 +0000)]
Fix bug: LICM/sink_multiple_exits.ll

Thanks for pointing this out John  :)

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

20 years agoDon't allow dead instructions to stop sinking early.
Chris Lattner [Wed, 10 Dec 2003 20:43:29 +0000 (20:43 +0000)]
Don't allow dead instructions to stop sinking early.

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