oota-llvm.git
14 years agomove setcc and jcc aliases from .cpp to .td
Chris Lattner [Sat, 30 Oct 2010 17:51:45 +0000 (17:51 +0000)]
move setcc and jcc aliases from .cpp to .td

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

14 years agomove some code.
Chris Lattner [Sat, 30 Oct 2010 17:38:55 +0000 (17:38 +0000)]
move some code.

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

14 years agoimplement (and document!) the first kind of MC assembler alias, which
Chris Lattner [Sat, 30 Oct 2010 17:36:36 +0000 (17:36 +0000)]
implement (and document!) the first kind of MC assembler alias, which
just remaps one mnemonic to another.  Convert a few of the X86 aliases
from .cpp to .td code.

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

14 years agoadd a test for the ud2a alias.
Chris Lattner [Sat, 30 Oct 2010 17:01:25 +0000 (17:01 +0000)]
add a test for the ud2a alias.

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

14 years agoNow that the MallocInst no longer exists, this workaround for
Duncan Sands [Sat, 30 Oct 2010 16:12:16 +0000 (16:12 +0000)]
Now that the MallocInst no longer exists, this workaround for
it claiming not to have side-effects is no longer needed.

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

14 years agoAllow specifying a CPU to llvm-mc, so that we can properly set up subtarget
Jim Grosbach [Sat, 30 Oct 2010 15:57:50 +0000 (15:57 +0000)]
Allow specifying a CPU to llvm-mc, so that we can properly set up subtarget
feature lists for instruction pattern predicates.

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

14 years agoAdd FIXME.
Jim Grosbach [Sat, 30 Oct 2010 14:54:23 +0000 (14:54 +0000)]
Add FIXME.

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

14 years agoClean up comments.
Jim Grosbach [Sat, 30 Oct 2010 13:48:28 +0000 (13:48 +0000)]
Clean up comments.

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

14 years ago80 columns.
Jim Grosbach [Sat, 30 Oct 2010 13:46:39 +0000 (13:46 +0000)]
80 columns.

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

14 years agoIf a function does a volatile load from a global constant, do not
Duncan Sands [Sat, 30 Oct 2010 12:59:44 +0000 (12:59 +0000)]
If a function does a volatile load from a global constant, do not
consider it to be readonly.  In fact, don't even consider it to be
readonly if it does a volatile load from an AllocaInst either (it
is debatable as to whether readonly would be correct or not in this
case; play safe for the moment).  This fixes PR8279.

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

14 years agoTidy up.
Jim Grosbach [Sat, 30 Oct 2010 12:59:16 +0000 (12:59 +0000)]
Tidy up.

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

14 years agoRename alignof -> alignOf to avoid irritating C++'0x compilers,
Chris Lattner [Sat, 30 Oct 2010 05:14:01 +0000 (05:14 +0000)]
Rename alignof -> alignOf to avoid irritating C++'0x compilers,
PR8423, patch by nobled.

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

14 years agostay out of the reserved namespace
Chris Lattner [Sat, 30 Oct 2010 04:57:14 +0000 (04:57 +0000)]
stay out of the reserved namespace

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

14 years agosimplify this code.
Chris Lattner [Sat, 30 Oct 2010 04:35:59 +0000 (04:35 +0000)]
simplify this code.

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

14 years agosplit MaybeParseRegister into its two logical uses, eliminating malloc+free traffic.
Chris Lattner [Sat, 30 Oct 2010 04:09:10 +0000 (04:09 +0000)]
split MaybeParseRegister into its two logical uses, eliminating malloc+free traffic.

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

14 years agoAvoid re-evaluating MI.getNumOperands() every iteration of the loop.
Jim Grosbach [Sat, 30 Oct 2010 01:40:16 +0000 (01:40 +0000)]
Avoid re-evaluating MI.getNumOperands() every iteration of the loop.

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

14 years agoInclude MachineBasicBlock numbers in viewCFG() output.
Jakob Stoklund Olesen [Sat, 30 Oct 2010 01:26:19 +0000 (01:26 +0000)]
Include MachineBasicBlock numbers in viewCFG() output.

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

14 years agoMake sure copies are inserted after any exception handling labels at the top of
Jakob Stoklund Olesen [Sat, 30 Oct 2010 01:26:16 +0000 (01:26 +0000)]
Make sure copies are inserted after any exception handling labels at the top of
a basic block.

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

14 years agoAdd SkipPHIsAndLabels from PHIElimination to MachineBasicBlock. It is needed
Jakob Stoklund Olesen [Sat, 30 Oct 2010 01:26:14 +0000 (01:26 +0000)]
Add SkipPHIsAndLabels from PHIElimination to MachineBasicBlock. It is needed
elsewhere.

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

14 years agoDisable more of physical register live intervals verification.
Jakob Stoklund Olesen [Sat, 30 Oct 2010 01:26:11 +0000 (01:26 +0000)]
Disable more of physical register live intervals verification.

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

14 years agoPrint out register class of spilled register.
Jakob Stoklund Olesen [Sat, 30 Oct 2010 01:26:09 +0000 (01:26 +0000)]
Print out register class of spilled register.

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

14 years agoOverhaul memory barriers in the ARM backend. Radar 8601999.
Bob Wilson [Sat, 30 Oct 2010 00:54:37 +0000 (00:54 +0000)]
Overhaul memory barriers in the ARM backend.  Radar 8601999.
There were a number of issues to fix up here:
* The "device" argument of the llvm.memory.barrier intrinsic should be
used to distinguish the "Full System" domain from the "Inner Shareable"
domain.  It has nothing to do with using DMB vs. DSB instructions.
* The compiler should never need to emit DSB instructions.  Remove the
ARMISD::SYNCBARRIER node and also remove the instruction patterns for DSB.
* Merge the separate DMB/DSB instructions for options only used for the
disassembler with the default DMB/DSB instructions.  Add the default
"full system" option ARM_MB::SY to the ARM_MB::MemBOpt enum.
* Add a separate ARMISD::MEMBARRIER_MCR node for subtargets that implement
a data memory barrier using the MCR instruction.
* Fix up encodings for these instructions (except MCR).
I also updated the tests and added a few new ones to check for DMB options
that were not currently being exercised.

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

14 years agoAdd polly support to the build system.
Tobias Grosser [Sat, 30 Oct 2010 00:54:26 +0000 (00:54 +0000)]
Add polly support to the build system.

Update the cmake and autoconf build system to compile polly
as a shared library if it is checked out into tools/polly. In case
polly is not checked out, nothing changes.
This models the way clang can be added to llvm if checked out to tools/clang.

Also rebuild configure.

Patch contributed by ether.

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

14 years agoEncode the register list operands for ARM mode LDM/STM instructions.
Jim Grosbach [Sat, 30 Oct 2010 00:37:59 +0000 (00:37 +0000)]
Encode the register list operands for ARM mode LDM/STM instructions.

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

14 years agoSome instructions end with an "ls" prefix, but it doesn't indicate that they are
Bill Wendling [Fri, 29 Oct 2010 23:50:21 +0000 (23:50 +0000)]
Some instructions end with an "ls" prefix, but it doesn't indicate that they are
conditional. Check for those instructions explicitly.

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

14 years agoMult-alt constraint incremental development step 3.
John Thompson [Fri, 29 Oct 2010 23:37:38 +0000 (23:37 +0000)]
Mult-alt constraint incremental development step 3.

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

14 years agoTeach machine cse to eliminate instructions with multiple physreg uses and defs....
Evan Cheng [Fri, 29 Oct 2010 23:36:03 +0000 (23:36 +0000)]
Teach machine cse to eliminate instructions with multiple physreg uses and defs. rdar://8610857.

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

14 years agoRemove hard tab characters.
Jim Grosbach [Fri, 29 Oct 2010 23:23:15 +0000 (23:23 +0000)]
Remove hard tab characters.

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

14 years ago80 column fix.
Jim Grosbach [Fri, 29 Oct 2010 23:21:57 +0000 (23:21 +0000)]
80 column fix.

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

14 years agotrailing whitespace
Jim Grosbach [Fri, 29 Oct 2010 23:21:03 +0000 (23:21 +0000)]
trailing whitespace

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

14 years agos/getNEONVcvtImm32/getNEONVcvtImm32OpValue/ to be consistent with other operand
Jim Grosbach [Fri, 29 Oct 2010 23:19:55 +0000 (23:19 +0000)]
s/getNEONVcvtImm32/getNEONVcvtImm32OpValue/ to be consistent with other operand
encoder functions.

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

14 years agoFix fpscr <-> GPR latency info.
Evan Cheng [Fri, 29 Oct 2010 23:16:55 +0000 (23:16 +0000)]
Fix fpscr <-> GPR latency info.

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

14 years agoBe more strict on when we produce an undefined reference. In gas a file with
Rafael Espindola [Fri, 29 Oct 2010 23:09:31 +0000 (23:09 +0000)]
Be more strict on when we produce an undefined reference. In gas a file with
just

.type   foo,@object

will produce an undefined reference to foo. On the other hand, a file with
just

.weakref bar, foo

will not. It is somewhat hard to support both in MC since both statements
should create the symbols. It should be possible if we really need to by
adding to the flags, but hopefully that is not necessary.

With this patch we do not produce a undefined reference in any of those cases.
The assembly file needs an actual use for the undefined reference to be
present.

This is in preparation for a patch implementing .weakref.

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

14 years agoApply a patch from Frits van Bommel to fix the CMake build.
Dan Gohman [Fri, 29 Oct 2010 22:36:50 +0000 (22:36 +0000)]
Apply a patch from Frits van Bommel to fix the CMake build.

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

14 years agoClean up indentation and other whitespace.
Bob Wilson [Fri, 29 Oct 2010 22:20:45 +0000 (22:20 +0000)]
Clean up indentation and other whitespace.

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

14 years agoRemove trailing whitespace.
Bob Wilson [Fri, 29 Oct 2010 22:20:43 +0000 (22:20 +0000)]
Remove trailing whitespace.

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

14 years agotrailing whitespace
Jim Grosbach [Fri, 29 Oct 2010 22:13:48 +0000 (22:13 +0000)]
trailing whitespace

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

14 years agoFix 80-column violation.
Bob Wilson [Fri, 29 Oct 2010 22:03:07 +0000 (22:03 +0000)]
Fix 80-column violation.

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

14 years agoChange instcombine's getShuffleMask to represent undef with negative values.
Bob Wilson [Fri, 29 Oct 2010 22:03:05 +0000 (22:03 +0000)]
Change instcombine's getShuffleMask to represent undef with negative values.
This code had previously used 2*N, where N is the mask length, to represent
undef.  That is not safe because the shufflevector operands may have more
than N elements -- they don't have to match the result type.

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

14 years agoRemove DAG combiner patch to fold vector splats. Instcombiner does it now.
Bob Wilson [Fri, 29 Oct 2010 22:03:02 +0000 (22:03 +0000)]
Remove DAG combiner patch to fold vector splats.  Instcombiner does it now.

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

14 years agoMake instcombine a little more aggressive in combining vector shuffles.
Bob Wilson [Fri, 29 Oct 2010 22:02:50 +0000 (22:02 +0000)]
Make instcombine a little more aggressive in combining vector shuffles.
Allow splats even if they don't match either of the original shuffles,
possibly due to undef entries in the shuffles masks.  Radar 8597790.
Also fix some 80-column violations.

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

14 years agoadd FIXME
Jim Grosbach [Fri, 29 Oct 2010 21:56:51 +0000 (21:56 +0000)]
add FIXME

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

14 years agoConvert ARM::MOVi2pieces to a true pseudo-instruction and expand it in
Jim Grosbach [Fri, 29 Oct 2010 21:35:25 +0000 (21:35 +0000)]
Convert ARM::MOVi2pieces to a true pseudo-instruction and expand it in
the ARMExpandPseudos pass rather than during the asm lowering.

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

14 years agoUpdate testcase since we're no longer doing the constant forwarding inline with corre...
Owen Anderson [Fri, 29 Oct 2010 21:18:23 +0000 (21:18 +0000)]
Update testcase since we're no longer doing the constant forwarding inline with correlated value propagation.

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

14 years agoHandle comparison values we already have - this fixes the consumer-typeset
Eric Christopher [Fri, 29 Oct 2010 21:08:19 +0000 (21:08 +0000)]
Handle comparison values we already have - this fixes the consumer-typeset
failure for llvm-gcc on arm fast isel.

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

14 years agoGive up on doing in-line instruction simplification during correlated value propagati...
Owen Anderson [Fri, 29 Oct 2010 21:05:17 +0000 (21:05 +0000)]
Give up on doing in-line instruction simplification during correlated value propagation.  Instruction simplification
needs to be guaranteed never to be run on an unreachable block.  However, earlier block simplifications may have
changed the CFG to make block that were reachable when we began our iteration unreachable by the time we try to
simplify them. (Note that this also means that our depth-first iterators were potentially being invalidated).

This should not have a large impact on code quality, since later runs of instcombine should pick up these simplifications.
Fixes PR8506.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 20:39:19 +0000 (20:39 +0000)]
Convert this test to .s form.

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

14 years agoARM::MOVi32imm is expanded in ARMExpandPseudoInsts, so there's no need to
Jim Grosbach [Fri, 29 Oct 2010 20:37:06 +0000 (20:37 +0000)]
ARM::MOVi32imm is expanded in ARMExpandPseudoInsts, so there's no need to
handle it in the asm lowering.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 20:23:45 +0000 (20:23 +0000)]
Convert this test to .s form.

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

14 years agoFix typo.
Jim Grosbach [Fri, 29 Oct 2010 20:21:49 +0000 (20:21 +0000)]
Fix typo.

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

14 years agoARM encoding information for CLREX, SWP and SWPB. Add comment for sjlj pseudos and...
Jim Grosbach [Fri, 29 Oct 2010 20:21:36 +0000 (20:21 +0000)]
ARM encoding information for CLREX, SWP and SWPB. Add comment for sjlj pseudos and a FIXME for TLS.

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

14 years agonot is testing for a normal exit with a non-zero value. It shouldn't
Dan Gohman [Fri, 29 Oct 2010 20:20:29 +0000 (20:20 +0000)]
not is testing for a normal exit with a non-zero value. It shouldn't
return success if the child process is killed with a signal.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 20:17:07 +0000 (20:17 +0000)]
Convert this test to .s form.

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

14 years agoMake ScalarEvolution::forgetLoop forget all contained loops too, because
Dan Gohman [Fri, 29 Oct 2010 20:16:10 +0000 (20:16 +0000)]
Make ScalarEvolution::forgetLoop forget all contained loops too, because
they may have ValuesAtScopes map entries referencing their outer loops.
This fixes a user-after-free reported in PR8471.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 20:12:34 +0000 (20:12 +0000)]
Convert this test to .s form.

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

14 years agoARM mode LDREX*/STREX* binary encodings.
Jim Grosbach [Fri, 29 Oct 2010 19:58:57 +0000 (19:58 +0000)]
ARM mode LDREX*/STREX* binary encodings.

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

14 years agoCovert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:56:07 +0000 (19:56 +0000)]
Covert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:51:11 +0000 (19:51 +0000)]
Convert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:45:32 +0000 (19:45 +0000)]
Convert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:37:05 +0000 (19:37 +0000)]
Convert this test to .s form.

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

14 years agoEncoding information for ARM conditional move instructions.
Jim Grosbach [Fri, 29 Oct 2010 19:28:17 +0000 (19:28 +0000)]
Encoding information for ARM conditional move instructions.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:17:08 +0000 (19:17 +0000)]
Convert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:09:08 +0000 (19:09 +0000)]
Convert this test to .s form.

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

14 years agoCovert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 19:05:26 +0000 (19:05 +0000)]
Covert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 18:58:30 +0000 (18:58 +0000)]
Convert this test to .s form.

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

14 years agoConvert this test to .s form.
Owen Anderson [Fri, 29 Oct 2010 18:48:59 +0000 (18:48 +0000)]
Convert this test to .s form.

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

14 years agoConvert this file to less fragile .s form.
Owen Anderson [Fri, 29 Oct 2010 18:41:40 +0000 (18:41 +0000)]
Convert this file to less fragile .s form.

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

14 years agoReplace this test with the less fragile .s version. Still XFAIL'd, since the ASM...
Owen Anderson [Fri, 29 Oct 2010 18:31:26 +0000 (18:31 +0000)]
Replace this test with the less fragile .s version.  Still XFAIL'd, since the ASM parser doesn't parse vabal yet.

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

14 years agoFix sign error.
Jakob Stoklund Olesen [Fri, 29 Oct 2010 18:21:18 +0000 (18:21 +0000)]
Fix sign error.

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

14 years agoCovert this test to a .s file to reduce fragility.
Owen Anderson [Fri, 29 Oct 2010 18:18:40 +0000 (18:18 +0000)]
Covert this test to a .s file to reduce fragility.

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

14 years agoAvoiding overly aggressive latency scheduling. If the two nodes share an
Evan Cheng [Fri, 29 Oct 2010 18:09:28 +0000 (18:09 +0000)]
Avoiding overly aggressive latency scheduling. If the two nodes share an
operand and one of them has a single use that is a live out copy, favor the
one that is live out. Otherwise it will be difficult to eliminate the copy
if the instruction is a loop induction variable update. e.g.

BB:
sub r1, r3, #1
str r0, [r2, r3]
mov r3, r1
cmp
bne BB

=>

BB:
str r0, [r2, r3]
sub r3, r3, #1
cmp
bne BB

This fixed the recent 256.bzip2 regression.

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

14 years ago- Don't schedule nodes with only MVT::Flag and MVT::Other values for latency.
Evan Cheng [Fri, 29 Oct 2010 18:07:31 +0000 (18:07 +0000)]
- Don't schedule nodes with only MVT::Flag and MVT::Other values for latency.
- Compute CopyToReg use operand latency correctly.

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

14 years agoDon't transfer unused values to the new intervals formed by splitting.
Jakob Stoklund Olesen [Fri, 29 Oct 2010 17:47:49 +0000 (17:47 +0000)]
Don't transfer unused values to the new intervals formed by splitting.

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

14 years agoHandle ARM addrmode5 instructions with an offset.
Jim Grosbach [Fri, 29 Oct 2010 17:41:25 +0000 (17:41 +0000)]
Handle ARM addrmode5 instructions with an offset.

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

14 years agoSilence Release build warnings.
Benjamin Kramer [Fri, 29 Oct 2010 17:40:05 +0000 (17:40 +0000)]
Silence Release build warnings.

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

14 years agoTeach ConnectedVNInfoEqClasses::Classify to deal with unused values.
Jakob Stoklund Olesen [Fri, 29 Oct 2010 17:37:29 +0000 (17:37 +0000)]
Teach ConnectedVNInfoEqClasses::Classify to deal with unused values.

We don't want unused values forming their own equivalence classes, so we lump
them all together in one class, and then merge them with the class of the last
used value.

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

14 years agoNever propagate the idom value out of a block that defines its own value.
Jakob Stoklund Olesen [Fri, 29 Oct 2010 17:37:25 +0000 (17:37 +0000)]
Never propagate the idom value out of a block that defines its own value.

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

14 years agoInline asm multiple alternative constraints development phase 2 - improved basic...
John Thompson [Fri, 29 Oct 2010 17:29:13 +0000 (17:29 +0000)]
Inline asm multiple alternative constraints development phase 2 - improved basic logic, added initial platform support.

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

14 years agoCheck if ErrMsg is null. This fixes the "not" command.
Dan Gohman [Fri, 29 Oct 2010 17:20:42 +0000 (17:20 +0000)]
Check if ErrMsg is null. This fixes the "not" command.

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

14 years agoFix these error messages to be less confusing. These error
Dan Gohman [Fri, 29 Oct 2010 17:03:40 +0000 (17:03 +0000)]
Fix these error messages to be less confusing. These error
messages primarily indicate errors running the viewer, not
errors with the graph file itself.

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

14 years agoMake Program::Wait differentiate execution failure due to the file
Dan Gohman [Fri, 29 Oct 2010 16:54:25 +0000 (16:54 +0000)]
Make Program::Wait differentiate execution failure due to the file
being not found from the file being not executable.

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

14 years agoRevert 117660. Apparently it's not as trivial as that...
Jim Grosbach [Fri, 29 Oct 2010 16:50:53 +0000 (16:50 +0000)]
Revert 117660. Apparently it's not as trivial as that...

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

14 years agoSimplify.
Devang Patel [Fri, 29 Oct 2010 16:42:37 +0000 (16:42 +0000)]
Simplify.

-      DIFile F = getFieldAs<DIFile>(6);
-      return F.getDirectory();
+      return getFieldAs<DIFile>(6).getDirectory();

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

14 years agoMake Program::Wait provide an error message string for errors
Dan Gohman [Fri, 29 Oct 2010 16:39:01 +0000 (16:39 +0000)]
Make Program::Wait provide an error message string for errors
executing the child process and abnormal child process termination.

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

14 years agoARM addrmode5 instructions have neither writeback nor post-indexed modes.
Jim Grosbach [Fri, 29 Oct 2010 16:38:59 +0000 (16:38 +0000)]
ARM addrmode5 instructions have neither writeback nor post-indexed modes.

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

14 years agoCheck for (unlikely) errors from FindExecutable.
Dan Gohman [Fri, 29 Oct 2010 16:18:26 +0000 (16:18 +0000)]
Check for (unlikely) errors from FindExecutable.

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

14 years agoFix these error messages to not mention PATH in cases where
Dan Gohman [Fri, 29 Oct 2010 16:15:23 +0000 (16:15 +0000)]
Fix these error messages to not mention PATH in cases where
PATH isn't actually searched, and to not mention the executable
directory when it isn't actually searched.

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

14 years agoDelete this obsolete comment.
Dan Gohman [Fri, 29 Oct 2010 16:03:34 +0000 (16:03 +0000)]
Delete this obsolete comment.

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

14 years agoTrailing whitespace.
Jim Grosbach [Fri, 29 Oct 2010 14:46:02 +0000 (14:46 +0000)]
Trailing whitespace.

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

14 years agoARMAsmParser: Plug a memory leak.
Benjamin Kramer [Fri, 29 Oct 2010 09:43:39 +0000 (09:43 +0000)]
ARMAsmParser: Plug a memory leak.

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

14 years agoAdd an unreachable to silence warning - the switch is actually
Eric Christopher [Fri, 29 Oct 2010 09:26:59 +0000 (09:26 +0000)]
Add an unreachable to silence warning - the switch is actually
fully enumerated.

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

14 years agounittests/CMakeLists.txt: Don't use RTTI, or linking failed.
NAKAMURA Takumi [Fri, 29 Oct 2010 08:59:43 +0000 (08:59 +0000)]
unittests/CMakeLists.txt: Don't use RTTI, or linking failed.

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

14 years agoThis may be an ARM target, so check for _Unwind_SjLj_Resume.
Bill Wendling [Fri, 29 Oct 2010 07:46:01 +0000 (07:46 +0000)]
This may be an ARM target, so check for _Unwind_SjLj_Resume.

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

14 years agotest/Scripts/macho-dump: Make hack for Python-2.4. [PR7995]
NAKAMURA Takumi [Fri, 29 Oct 2010 01:14:16 +0000 (01:14 +0000)]
test/Scripts/macho-dump: Make hack for Python-2.4. [PR7995]

With Python-2.4, Reader::read64 always returns (unexpected) long integer.
FileCheck detects failure on test/MC/MachO among '0' and '0L'.

CentOS5(aka RHEL5 clone) provides python-2.4.

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

14 years agoTeach memdep to use pointsToConstantMemory to determine that loads
Dan Gohman [Fri, 29 Oct 2010 01:14:04 +0000 (01:14 +0000)]
Teach memdep to use pointsToConstantMemory to determine that loads
from constant memory don't alias any stores.

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

14 years agoConvert this test to a .s file, so that it's not sensitive to codegen changes.
Owen Anderson [Fri, 29 Oct 2010 01:01:56 +0000 (01:01 +0000)]
Convert this test to a .s file, so that it's not sensitive to codegen changes.

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

14 years agoAdd a basic testcase for TBAA-aware DSE.
Dan Gohman [Fri, 29 Oct 2010 00:54:02 +0000 (00:54 +0000)]
Add a basic testcase for TBAA-aware DSE.

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

14 years agoFix broken equivalence class calculation. We could probably also use
Jakob Stoklund Olesen [Fri, 29 Oct 2010 00:40:59 +0000 (00:40 +0000)]
Fix broken equivalence class calculation. We could probably also use
EquvivalenceClasses.h except it looks like overkill when elements are continuous
integers.

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

14 years agoPrint out the connected components in the verifier after complaining about their
Jakob Stoklund Olesen [Fri, 29 Oct 2010 00:40:57 +0000 (00:40 +0000)]
Print out the connected components in the verifier after complaining about their
multiplicity.

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

14 years agoRun a verification pass before any splitting to better distribute blame.
Jakob Stoklund Olesen [Fri, 29 Oct 2010 00:40:55 +0000 (00:40 +0000)]
Run a verification pass before any splitting to better distribute blame.

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