oota-llvm.git
14 years agoAllow '+' to appear in APInt strings, and add more unit tests.
Erick Tryzelaar [Fri, 21 Aug 2009 03:15:14 +0000 (03:15 +0000)]
Allow '+' to appear in APInt strings, and add more unit tests.

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

14 years agoRemove Neon intrinsics for VZIP, VUZP, and VTRN. We will represent these as
Bob Wilson [Fri, 21 Aug 2009 00:01:42 +0000 (00:01 +0000)]
Remove Neon intrinsics for VZIP, VUZP, and VTRN.  We will represent these as
vector shuffles.  Temporarily remove the tests for these operations until the
new implementation is working.

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

14 years agoRe-revert r79555. Apparently it's not just buildbot weirdness.
Owen Anderson [Thu, 20 Aug 2009 23:51:44 +0000 (23:51 +0000)]
Re-revert r79555.  Apparently it's not just buildbot weirdness.

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

14 years agoAdd support for including '+' in APFloat strings, more asserts,
Erick Tryzelaar [Thu, 20 Aug 2009 23:30:43 +0000 (23:30 +0000)]
Add support for including '+' in APFloat strings, more asserts,
and many new unit tests.

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

14 years agoReapply r79555 for testing. Daniel's trying to work out some buildbot weirdnesss.
Owen Anderson [Thu, 20 Aug 2009 23:14:20 +0000 (23:14 +0000)]
Reapply r79555 for testing.  Daniel's trying to work out some buildbot weirdnesss.

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

14 years agoUse FileCheck even though this means testing for something
Dale Johannesen [Thu, 20 Aug 2009 22:12:08 +0000 (22:12 +0000)]
Use FileCheck even though this means testing for something
that has nothing to do with the point of the test, per Chris.

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

14 years ago--- Reverse-merging r79555 into '.':
Bill Wendling [Thu, 20 Aug 2009 22:04:42 +0000 (22:04 +0000)]
--- Reverse-merging r79555 into '.':
U    include/llvm/Target/TargetData.h
U    lib/Target/TargetData.cpp

Temporarily revert 79555. It was causing hangs and test failures.

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

14 years agoAttempt to comment this code more.
Bill Wendling [Thu, 20 Aug 2009 22:02:24 +0000 (22:02 +0000)]
Attempt to comment this code more.

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

14 years agoSuppress build warning in -Asserts
Daniel Dunbar [Thu, 20 Aug 2009 20:01:34 +0000 (20:01 +0000)]
Suppress build warning in -Asserts

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

14 years agopart of the previous commit for PIC16 ISR implementation.
Sanjiv Gupta [Thu, 20 Aug 2009 19:34:18 +0000 (19:34 +0000)]
part of the previous commit for PIC16 ISR implementation.

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

14 years agoImplement support for ISRs.
Sanjiv Gupta [Thu, 20 Aug 2009 19:28:24 +0000 (19:28 +0000)]
Implement support for ISRs.
Clone functions that are shared between the Main thread and Interrupt thread.
CallSites are changed in AsmPrinter currently. A better solution would have been to modify the legalizer (SoftenFloat) to allow targets to change the name of libcalls for float operations. But that currently breaks other targets.
Also, cloing of automatic variables is done AsmPrinter, a better approach would
be to use the ValueMap in CloneFunction itself.

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

14 years agoReduce contention on the Attributes lock by using atomic operations for reference...
Owen Anderson [Thu, 20 Aug 2009 19:03:20 +0000 (19:03 +0000)]
Reduce contention on the Attributes lock by using atomic operations for reference counting rather than locking.

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

14 years agoMake the StructType->StructLayout table private to TargetData, allowing us to avoid...
Owen Anderson [Thu, 20 Aug 2009 18:26:03 +0000 (18:26 +0000)]
Make the StructType->StructLayout table private to TargetData, allowing us to avoid locking on it.

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

14 years agoFixed PCMPESTRM128 to have opcode 0x60 instead of 0x62, as specified by the
Sean Callanan [Thu, 20 Aug 2009 18:24:27 +0000 (18:24 +0000)]
Fixed PCMPESTRM128 to have opcode 0x60 instead of 0x62, as specified by the
Intel documentation.

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

14 years agoFix an x86 code size regression: prefer RIP-relative addressing
Dan Gohman [Thu, 20 Aug 2009 18:23:44 +0000 (18:23 +0000)]
Fix an x86 code size regression: prefer RIP-relative addressing
over absolute addressing even in non-PIC mode (unless the address
has an index or something else incompatible), because it has a
smaller encoding.

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

14 years agoAdd a comment explaining why llvm_unreachable_internal doesn't call
Dan Gohman [Thu, 20 Aug 2009 17:15:19 +0000 (17:15 +0000)]
Add a comment explaining why llvm_unreachable_internal doesn't call
the ErrorHandler callback.

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

14 years agoFix two APFloat bugs in converting hexadecimal constants.
Daniel Dunbar [Thu, 20 Aug 2009 17:12:33 +0000 (17:12 +0000)]
Fix two APFloat bugs in converting hexadecimal constants.

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

14 years agoRename hasNoUnsignedOverflow and hasNoSignedOverflow to hasNoUnsignedWrap
Dan Gohman [Thu, 20 Aug 2009 17:11:38 +0000 (17:11 +0000)]
Rename hasNoUnsignedOverflow and hasNoSignedOverflow to hasNoUnsignedWrap
and hasNoSignedWrap, for consistency with the nuw and nsw properties.

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

14 years agoClarify a few things in the inbounds description.
Dan Gohman [Thu, 20 Aug 2009 17:08:17 +0000 (17:08 +0000)]
Clarify a few things in the inbounds description.

Describing inbounds in terms of infinitely precise arithmetic prohibits
the assumption address-space-sized integer arithmetic will wrap, with
a wrapped-around value landing within the same object.

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

14 years agoFixed header comment.
Misha Brukman [Thu, 20 Aug 2009 17:01:14 +0000 (17:01 +0000)]
Fixed header comment.

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

14 years agoFix an obvious copy-n-paste bug.
Evan Cheng [Thu, 20 Aug 2009 17:01:04 +0000 (17:01 +0000)]
Fix an obvious copy-n-paste bug.

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

14 years agoUse FileCheck for the test run where it's appropriate.
Dale Johannesen [Thu, 20 Aug 2009 16:58:04 +0000 (16:58 +0000)]
Use FileCheck for the test run where it's appropriate.

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

14 years agoVarious comment and whitespace cleanups.
Dan Gohman [Thu, 20 Aug 2009 16:42:55 +0000 (16:42 +0000)]
Various comment and whitespace cleanups.

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

14 years agoUpdate and fix some comments.
Dan Gohman [Thu, 20 Aug 2009 16:27:10 +0000 (16:27 +0000)]
Update and fix some comments.

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

14 years agoAdd myself to the blame list.
Benjamin Kramer [Thu, 20 Aug 2009 15:20:15 +0000 (15:20 +0000)]
Add myself to the blame list.

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

14 years agoCorrect ARM v7-A architecture name spelling and add note about hard float.
Sandeep Patel [Thu, 20 Aug 2009 15:01:16 +0000 (15:01 +0000)]
Correct ARM v7-A architecture name spelling and add note about hard float.

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

14 years agoDon't try to build .bc version of libprofile if LLVMGCC isn't available.
Daniel Dunbar [Thu, 20 Aug 2009 05:12:55 +0000 (05:12 +0000)]
Don't try to build .bc version of libprofile if LLVMGCC isn't available.

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

14 years agoRename FirstExtendedValueType to INVALID_SIMPLE_VALUE_TYPE
Erick Tryzelaar [Thu, 20 Aug 2009 05:09:43 +0000 (05:09 +0000)]
Rename FirstExtendedValueType to INVALID_SIMPLE_VALUE_TYPE
as that's a bit more descriptive of what we're testing for.

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

14 years agoRemove cruft for installing runtime/ libraries directly into the LLVMGCCDIR;
Daniel Dunbar [Thu, 20 Aug 2009 05:02:41 +0000 (05:02 +0000)]
Remove cruft for installing runtime/ libraries directly into the LLVMGCCDIR;
that is totally bogus.

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

14 years agofix this back, thanks Eli
Chris Lattner [Thu, 20 Aug 2009 03:10:14 +0000 (03:10 +0000)]
fix this back, thanks Eli

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

14 years agoAdd some comments clarifying what appear to be the intent of various
Dan Gohman [Thu, 20 Aug 2009 01:46:24 +0000 (01:46 +0000)]
Add some comments clarifying what appear to be the intent of various
error handling mechanisms. Please correct these if I've misunderstood
something.

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

14 years agoReword a few comments for AnalyzeBranch and InsertBranch, and fix
Dan Gohman [Thu, 20 Aug 2009 01:33:25 +0000 (01:33 +0000)]
Reword a few comments for AnalyzeBranch and InsertBranch, and fix
a few typos.

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

14 years agoCheck for shared landing pads when assigning call site values. Invokes which
Jim Grosbach [Thu, 20 Aug 2009 01:03:48 +0000 (01:03 +0000)]
Check for shared landing pads when assigning call site values. Invokes which
share a landing pad should also use the same call site value.

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

14 years agominor grammar tweak
Chris Lattner [Thu, 20 Aug 2009 00:29:24 +0000 (00:29 +0000)]
minor grammar tweak

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

14 years agoAdd an extra line to conform with preferred style.
Dale Johannesen [Wed, 19 Aug 2009 23:44:01 +0000 (23:44 +0000)]
Add an extra line to conform with preferred style.

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

14 years agoModify an assert to avoid what looks like a GCC 4.2.4 signed-ness bug.
Reid Kleckner [Wed, 19 Aug 2009 23:39:59 +0000 (23:39 +0000)]
Modify an assert to avoid what looks like a GCC 4.2.4 signed-ness bug.

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

14 years agoFix a few places to check if TargetData is available before using it.
Dan Gohman [Wed, 19 Aug 2009 23:38:22 +0000 (23:38 +0000)]
Fix a few places to check if TargetData is available before using it.

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

14 years agoAdd a fast path for setName("") on an unnamed value.
Daniel Dunbar [Wed, 19 Aug 2009 23:37:23 +0000 (23:37 +0000)]
Add a fast path for setName("") on an unnamed value.

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

14 years agoLoosen up the regex for this test so that it doesn't implicitly
Dan Gohman [Wed, 19 Aug 2009 23:19:36 +0000 (23:19 +0000)]
Loosen up the regex for this test so that it doesn't implicitly
depend on TargetData information.

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

14 years agoAdd targetdata strings to these tests, since SimplifyLibCalls uses
Dan Gohman [Wed, 19 Aug 2009 23:18:49 +0000 (23:18 +0000)]
Add targetdata strings to these tests, since SimplifyLibCalls uses
TargetData to find the pointer size.

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

14 years agoUpdate the release process some more. Lots of good details now.
Tanya Lattner [Wed, 19 Aug 2009 23:07:37 +0000 (23:07 +0000)]
Update the release process some more. Lots of good details now.

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

14 years agoRemove an unnecessary include. Now we won't have circular include
David Greene [Wed, 19 Aug 2009 23:00:07 +0000 (23:00 +0000)]
Remove an unnecessary include.  Now we won't have circular include
problems later on.

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

14 years agoAttrListPtr operations need to be atomic.
Owen Anderson [Wed, 19 Aug 2009 22:58:34 +0000 (22:58 +0000)]
AttrListPtr operations need to be atomic.

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

14 years agoFix a bug in the over-index constant folding. When over-indexing an
Dan Gohman [Wed, 19 Aug 2009 22:46:59 +0000 (22:46 +0000)]
Fix a bug in the over-index constant folding. When over-indexing an
array member of a struct, it's possible to land in an arbitrary position
inside that struct, such that attempting to find further getelementptr
indices will fail. In such cases, folding cannot be done.

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

14 years agoHandle 'a' modifier in X86 asms. PR 4742.
Dale Johannesen [Wed, 19 Aug 2009 22:44:41 +0000 (22:44 +0000)]
Handle 'a' modifier in X86 asms.  PR 4742.

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

14 years agoFixed error in CPPBackend from a contextification API change.
Reid Kleckner [Wed, 19 Aug 2009 22:38:37 +0000 (22:38 +0000)]
Fixed error in CPPBackend from a contextification API change.

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

14 years agoSwitch IRBuilder to using Twine references for names.
Daniel Dunbar [Wed, 19 Aug 2009 22:34:21 +0000 (22:34 +0000)]
Switch IRBuilder to using Twine references for names.

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

14 years agoAdd missing forward declaration.
David Greene [Wed, 19 Aug 2009 22:19:44 +0000 (22:19 +0000)]
Add missing forward declaration.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 22:16:11 +0000 (22:16 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 22:08:26 +0000 (22:08 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 22:05:21 +0000 (22:05 +0000)]
Add missing includes.

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

14 years agoAdd a REQUIRES_FRAME_POINTER option to disable the frame pointer
Nicolas Geoffray [Wed, 19 Aug 2009 22:04:44 +0000 (22:04 +0000)]
Add a REQUIRES_FRAME_POINTER option to disable the frame pointer
elimination optimization on the LLVM code base.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 22:02:07 +0000 (22:02 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:59:18 +0000 (21:59 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:55:33 +0000 (21:55 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:52:55 +0000 (21:52 +0000)]
Add missing includes.

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

14 years agoGet rid of a helgrind warning. If this is _actually_ a performance problem,
Owen Anderson [Wed, 19 Aug 2009 21:48:34 +0000 (21:48 +0000)]
Get rid of a helgrind warning.  If this is _actually_ a performance problem,
we can find a way to cache the answer that isn't racy.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:22:18 +0000 (21:22 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:19:41 +0000 (21:19 +0000)]
Add missing includes.

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

14 years agoAdd missing includes.
David Greene [Wed, 19 Aug 2009 21:17:28 +0000 (21:17 +0000)]
Add missing includes.

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

14 years agoBuild runtime libraries by default.
Daniel Dunbar [Wed, 19 Aug 2009 21:09:45 +0000 (21:09 +0000)]
Build runtime libraries by default.

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

14 years agoAdd missing header.
David Greene [Wed, 19 Aug 2009 20:52:54 +0000 (20:52 +0000)]
Add missing header.

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

14 years agoAdd triple parsing support for TCE.
Eli Friedman [Wed, 19 Aug 2009 20:46:03 +0000 (20:46 +0000)]
Add triple parsing support for TCE.

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

14 years agoUnbreak GetBufferSize() on uninitialized streams. This fixes a problem
Dan Gohman [Wed, 19 Aug 2009 20:27:57 +0000 (20:27 +0000)]
Unbreak GetBufferSize() on uninitialized streams. This fixes a problem
that led to errs() getting made buffered.

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

14 years agoTweak svn:ignore
Daniel Dunbar [Wed, 19 Aug 2009 20:08:02 +0000 (20:08 +0000)]
Tweak svn:ignore

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

14 years agoSwitch to SmallString::str from SmallString::c_str, and remove
Daniel Dunbar [Wed, 19 Aug 2009 20:07:03 +0000 (20:07 +0000)]
Switch to SmallString::str from SmallString::c_str, and remove
SmallString::c_str.

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

14 years agoAdd min and max tests.
Daniel Dunbar [Wed, 19 Aug 2009 19:58:19 +0000 (19:58 +0000)]
Add min and max tests.

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

14 years agoAdd SmallString::str (which returns a StringRef); this is more efficient than
Daniel Dunbar [Wed, 19 Aug 2009 19:57:55 +0000 (19:57 +0000)]
Add SmallString::str (which returns a StringRef); this is more efficient than
c_str().

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

14 years agoRemove SmallString::append_*int* unit tests.
Benjamin Kramer [Wed, 19 Aug 2009 19:41:05 +0000 (19:41 +0000)]
Remove SmallString::append_*int* unit tests.

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

14 years agoRemove SmallString::append_*int* methods; how many copies of int -> str
Daniel Dunbar [Wed, 19 Aug 2009 19:28:18 +0000 (19:28 +0000)]
Remove SmallString::append_*int* methods; how many copies of int -> str
conversion code do we really need?
 - S.append_uint(N) can be replaced with 'raw_svector_ostream(S) << N' which is
   somewhat slower due to the extra set up cost, but still plenty fast
   (especially if the svector set up cost can be amortized).

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

14 years agoChange ValueSymbolTable to use raw_svector_ostream for string concatenation.
Daniel Dunbar [Wed, 19 Aug 2009 19:22:52 +0000 (19:22 +0000)]
Change ValueSymbolTable to use raw_svector_ostream for string concatenation.

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

14 years agoMake this test platform neutral.
Bill Wendling [Wed, 19 Aug 2009 18:51:45 +0000 (18:51 +0000)]
Make this test platform neutral.

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

14 years agoChange raw_svector_ostream to reserve the input buffer if necessary, Ted was
Daniel Dunbar [Wed, 19 Aug 2009 18:40:58 +0000 (18:40 +0000)]
Change raw_svector_ostream to reserve the input buffer if necessary, Ted was
right.
 - This class turns out to be much more convenient to use if we do this; clients
   can make sure the buffer is always big enough if they care (since our current
   idiom tends to be to use a SmallString<256> for the input to this we should
   generally be avoiding an unnecessary malloc).

Also, add a convenience raw_svector_ostream::str method which flushes the buffer
and returns a StringRef for the vector contents.

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

14 years agoFix typo
Daniel Dunbar [Wed, 19 Aug 2009 18:35:54 +0000 (18:35 +0000)]
Fix typo

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

14 years agoRemove temporary testing code.
Dan Gohman [Wed, 19 Aug 2009 18:27:08 +0000 (18:27 +0000)]
Remove temporary testing code.

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

14 years agoMake SROA and PredicateSimplifier cope if TargetData is not
Dan Gohman [Wed, 19 Aug 2009 18:22:18 +0000 (18:22 +0000)]
Make SROA and PredicateSimplifier cope if TargetData is not
available. This is very conservative for now.

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

14 years agoUse hasDefinitiveInitializer() instead of testing the same thing
Dan Gohman [Wed, 19 Aug 2009 18:20:44 +0000 (18:20 +0000)]
Use hasDefinitiveInitializer() instead of testing the same thing
by hand, and fix a few places that were using hasInitializer() that
appear to depend on the initializer value.

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

14 years agoCanonicalize indices in a constantexpr GEP. If Indices exceed the
Dan Gohman [Wed, 19 Aug 2009 18:18:36 +0000 (18:18 +0000)]
Canonicalize indices in a constantexpr GEP. If Indices exceed the
static extents of the static array type, it causes GlobalOpt and
other passes to be more conservative. This canonicalization also
allows the constant folder to add "inbounds" to GEPs.

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

14 years agoAdd an x86 peep that narrows TEST instructions to forms that use
Dan Gohman [Wed, 19 Aug 2009 18:16:17 +0000 (18:16 +0000)]
Add an x86 peep that narrows TEST instructions to forms that use
a smaller encoding. These kinds of patterns are very frequent in
sqlite3, for example.

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

14 years agoSwitch Twine::str() to use toVector(), which is now efficient.
Daniel Dunbar [Wed, 19 Aug 2009 18:09:47 +0000 (18:09 +0000)]
Switch Twine::str() to use toVector(), which is now efficient.

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

14 years agoUpdate Cortex-A8 instruction itineraries for integer instructions.
David Goodwin [Wed, 19 Aug 2009 18:00:44 +0000 (18:00 +0000)]
Update Cortex-A8 instruction itineraries for integer instructions.

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

14 years agoAdd a first stab at describing LLVMContext.
Owen Anderson [Wed, 19 Aug 2009 17:58:52 +0000 (17:58 +0000)]
Add a first stab at describing LLVMContext.

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

14 years agoSwitch raw_svector_ostream to use the vector as the ostream buffer.
Daniel Dunbar [Wed, 19 Aug 2009 17:54:29 +0000 (17:54 +0000)]
Switch raw_svector_ostream to use the vector as the ostream buffer.
 - This avoids unnecessary malloc/free overhead in the common case, and
   unnecessary copying from the ostream buffer into the output vector.

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

14 years agoAdd SmallVector::{capacity,set_size}.
Daniel Dunbar [Wed, 19 Aug 2009 17:48:28 +0000 (17:48 +0000)]
Add SmallVector::{capacity,set_size}.
 - These allow clients to make use of the extra elements in the vector which
   have already been allocated, without requiring them to be value initialized.

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

14 years agoBasicBlock::getContext can no longer return a NULL so update the doc.
Erick Tryzelaar [Wed, 19 Aug 2009 17:40:05 +0000 (17:40 +0000)]
BasicBlock::getContext can no longer return a NULL so update the doc.

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

14 years agoUpdate the ocaml docs to work with LLVMContext.
Erick Tryzelaar [Wed, 19 Aug 2009 17:32:38 +0000 (17:32 +0000)]
Update the ocaml docs to work with LLVMContext.

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

14 years agoConvert the rest of the ocaml types and functions to use context.
Erick Tryzelaar [Wed, 19 Aug 2009 17:32:24 +0000 (17:32 +0000)]
Convert the rest of the ocaml types and functions to use context.

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

14 years agoReapply my less-lock-contention-in-leak-detector patch, now with new files
Owen Anderson [Wed, 19 Aug 2009 17:07:46 +0000 (17:07 +0000)]
Reapply my less-lock-contention-in-leak-detector patch, now with new files
actually added.

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

14 years agoAdd support for Neon VEXT (vector extract) shuffles.
Bob Wilson [Wed, 19 Aug 2009 17:03:43 +0000 (17:03 +0000)]
Add support for Neon VEXT (vector extract) shuffles.
This is derived from a patch by Anton Korzh.  I modified it to recognize
the VEXT shuffles during legalization and lower them to a target-specific
DAG node.

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

14 years agoFix a commento.
Daniel Dunbar [Wed, 19 Aug 2009 16:25:53 +0000 (16:25 +0000)]
Fix a commento.

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

14 years agoSpeculatively revert r79375, which may be breaking bootstrap, although in a
Daniel Dunbar [Wed, 19 Aug 2009 16:25:25 +0000 (16:25 +0000)]
Speculatively revert r79375, which may be breaking bootstrap, although in a
rather obscure way (the other candidate is r79377).

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

14 years agoUse the schedule itinerary operand use/def cycle information to adjust dependence...
David Goodwin [Wed, 19 Aug 2009 16:08:58 +0000 (16:08 +0000)]
Use the schedule itinerary operand use/def cycle information to adjust dependence edge latency for post-RA scheduling.

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

14 years agoTest commit access with a first act of vanity.
Sandeep Patel [Wed, 19 Aug 2009 15:07:40 +0000 (15:07 +0000)]
Test commit access with a first act of vanity.

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

14 years agoFix cmake build on non-x86 targets. Patch by
Duncan Sands [Wed, 19 Aug 2009 12:41:52 +0000 (12:41 +0000)]
Fix cmake build on non-x86 targets.  Patch by
Xerxes RĂ„nby.

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

14 years agoProper MSVC build fix (and remove my hack again). Patch by Yonggang Luo.
Benjamin Kramer [Wed, 19 Aug 2009 12:38:51 +0000 (12:38 +0000)]
Proper MSVC build fix (and remove my hack again). Patch by Yonggang Luo.

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

14 years agoAdd a hack to unbreak MSVC builds. str(n)casecmp are POSIX functions and aren't avail...
Benjamin Kramer [Wed, 19 Aug 2009 12:16:17 +0000 (12:16 +0000)]
Add a hack to unbreak MSVC builds. str(n)casecmp are POSIX functions and aren't available on windows (mingw defines them though).

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

14 years agoPR4737: Fix a nasty bug in load narrowing with non-power-of-two types.
Eli Friedman [Wed, 19 Aug 2009 08:46:10 +0000 (08:46 +0000)]
PR4737: Fix a nasty bug in load narrowing with non-power-of-two types.

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

14 years agoAdd the ocaml binding to LLVMBuildAggregateRet.
Erick Tryzelaar [Wed, 19 Aug 2009 08:37:00 +0000 (08:37 +0000)]
Add the ocaml binding to LLVMBuildAggregateRet.

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

14 years agoExpose some extra functions to llvm-c
Erick Tryzelaar [Wed, 19 Aug 2009 08:36:49 +0000 (08:36 +0000)]
Expose some extra functions to llvm-c

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

14 years agoFix up PHI nodes correctly in the presence of unreachable BBs, part two. Also
Nick Lewycky [Wed, 19 Aug 2009 07:16:57 +0000 (07:16 +0000)]
Fix up PHI nodes correctly in the presence of unreachable BBs, part two. Also
delete a newed pointer, and improve readability a little bit.

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