oota-llvm.git
13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 years agoadd simple support for addrmode5 operands, allowing
Chris Lattner [Fri, 29 Oct 2010 00:27:31 +0000 (00:27 +0000)]
add simple support for addrmode5 operands, allowing
vldr.64 to work.  I have no idea if this is fully right, but
it is in the right direction.

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

13 years agoThe ARM jit cannot handle these tests as of 2010-10-27.
Andrew Trick [Fri, 29 Oct 2010 00:23:43 +0000 (00:23 +0000)]
The ARM jit cannot handle these tests as of 2010-10-27.
(A PR will be linked to this rev.)

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

13 years agoIgnore empty blocks.
Devang Patel [Thu, 28 Oct 2010 22:11:59 +0000 (22:11 +0000)]
Ignore empty blocks.

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

13 years agogive better error diagnostics, for example:
Chris Lattner [Thu, 28 Oct 2010 21:41:58 +0000 (21:41 +0000)]
give better error diagnostics, for example:

t.s:1:14: error: invalid operand for instruction
vldr.64 d17, [r0]
             ^

instead of:

t.s:1:1: error: unrecognized instruction
vldr.64 d17, [r0]
^

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

13 years agohook up getOpcodeName for ARM so that "llc -show-mc-inst" includes
Chris Lattner [Thu, 28 Oct 2010 21:37:33 +0000 (21:37 +0000)]
hook up getOpcodeName for ARM so that "llc -show-mc-inst" includes
the opcode string in the inst dump, e.g.:
vmov r2, r3, d17             @ encoding: [0x31,0x2b,0x53,0xec]
                                        @ <MCInst #989 VMOVRRD
                                        @  <MCOperand Reg:68>
                                        @  <MCOperand Reg:69>
                                        @  <MCOperand Reg:19>
                                        @  <MCOperand Imm:14>
                                        @  <MCOperand Reg:0>>

The "VMOVRRD" is new.

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

13 years agoImprovements to .section parsing:
Rafael Espindola [Thu, 28 Oct 2010 21:33:33 +0000 (21:33 +0000)]
Improvements to .section parsing:
* If we have a M or a G, reject sections without the type
* Only parse the flag specific arguments if we have M or G
* Parse the corresponding arguments for M and G

We ignore the G arguments and flag for now.

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

13 years agomost simple arm instructions match correctly now,
Chris Lattner [Thu, 28 Oct 2010 21:31:07 +0000 (21:31 +0000)]
most simple arm instructions match correctly now,
it looks like we're not handling [] operands though

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

13 years agofix the asmmatcher generator to handle targets with no RegisterPrefix
Chris Lattner [Thu, 28 Oct 2010 21:28:42 +0000 (21:28 +0000)]
fix the asmmatcher generator to handle targets with no RegisterPrefix
(like ARM) correctly.  With this change, we can now match "bx lr"
because we recognize lr as a register.

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

13 years agomove a method out of line.
Chris Lattner [Thu, 28 Oct 2010 21:28:01 +0000 (21:28 +0000)]
move a method out of line.

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

13 years agoremove the rest of hte owningptr's, no functionality change.
Chris Lattner [Thu, 28 Oct 2010 20:52:15 +0000 (20:52 +0000)]
remove the rest of hte owningptr's, no functionality change.

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

13 years agoOne day, physical register live ranges will be sensible.
Jakob Stoklund Olesen [Thu, 28 Oct 2010 20:44:22 +0000 (20:44 +0000)]
One day, physical register live ranges will be sensible.

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

13 years agoFix indentation.
Devang Patel [Thu, 28 Oct 2010 20:41:11 +0000 (20:41 +0000)]
Fix indentation.

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

13 years agoReplace SplitKit SSA update with an iterative algorithm very similar to the one
Jakob Stoklund Olesen [Thu, 28 Oct 2010 20:34:52 +0000 (20:34 +0000)]
Replace SplitKit SSA update with an iterative algorithm very similar to the one
in SSAUpdaterImpl.h

Verifying live intervals revealed that the old method was completely wrong, and
we need an iterative approach to calculating PHI placemant. Fortunately, we have
MachineDominators available, so we don't have to compute that over and over
like SSAUpdaterImpl.h must.

Live-out values are cached between calls to mapValue() and computed in a greedy
way, so most calls will be working with very small block sets.

Thanks to Bob for explaining how this should work.

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

13 years agoMake MachineDominators available for SplitEditor. We are going to need it for
Jakob Stoklund Olesen [Thu, 28 Oct 2010 20:34:50 +0000 (20:34 +0000)]
Make MachineDominators available for SplitEditor. We are going to need it for
proper SSA updating.

This doesn't cause MachineDominators to be recomputed since we are already
requiring MachineLoopInfo which uses dominators as well.

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

13 years agoAdd a temporary command line option to verify machine code after each spill or
Jakob Stoklund Olesen [Thu, 28 Oct 2010 20:34:47 +0000 (20:34 +0000)]
Add a temporary command line option to verify machine code after each spill or
split.

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

13 years agoRevert r117582, which reverted r77396. Searching PATH for a string
Dan Gohman [Thu, 28 Oct 2010 20:34:33 +0000 (20:34 +0000)]
Revert r117582, which reverted r77396. Searching PATH for a string
which contains slashes is inconsistent with the meaning of PATH on
Unix-type platforms, and pretty surprising.

If the user has given a specific path to execute and we can't
execute it, we should fail and say why.  (Apparently the new
posix_spawn code doesn't always say why, but that's a separate
issue.)

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

13 years agoBackward compatibility. Gracefully handle older versions of debug info.
Devang Patel [Thu, 28 Oct 2010 20:08:13 +0000 (20:08 +0000)]
Backward compatibility. Gracefully handle older versions of debug info.

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

13 years agoAdd support for the .string directive.
Rafael Espindola [Thu, 28 Oct 2010 20:02:27 +0000 (20:02 +0000)]
Add support for the .string directive.

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

13 years agoDo not work too hard to find type's file info. There is a special field to record...
Devang Patel [Thu, 28 Oct 2010 19:50:08 +0000 (19:50 +0000)]
Do not work too hard to find type's file info. There is a special field to record file info.

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

13 years agoFix indentation.
Devang Patel [Thu, 28 Oct 2010 19:40:13 +0000 (19:40 +0000)]
Fix indentation.

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

13 years agoDefined weak symbols should have non-zero value.
Rafael Espindola [Thu, 28 Oct 2010 19:39:57 +0000 (19:39 +0000)]
Defined weak symbols should have non-zero value.

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

13 years agollvmc: Make ExecuteProgram() look in the driver directory first.
Mikhail Glushenkov [Thu, 28 Oct 2010 19:33:08 +0000 (19:33 +0000)]
llvmc: Make ExecuteProgram() look in the driver directory first.

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

13 years agoRemove an unnecessary check and an unnecessary temporary.
Mikhail Glushenkov [Thu, 28 Oct 2010 19:33:04 +0000 (19:33 +0000)]
Remove an unnecessary check and an unnecessary temporary.

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

13 years agoRevert r77396.
Mikhail Glushenkov [Thu, 28 Oct 2010 19:32:58 +0000 (19:32 +0000)]
Revert r77396.

Original commit message:

    On "Unix", if Program::FindProgramByName is given a name containing
    slashes, just go with it, regardless of whether it looks like it will
    be executable. This follows the behavior of sh(1) more closely.

It's better when behaviour is consistent between platforms. This change also
makes FindExecutable() behave as expected on unix-likes (before this commit, it
used to always succeed).

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

13 years agoTrailing whitespace.
Mikhail Glushenkov [Thu, 28 Oct 2010 19:32:53 +0000 (19:32 +0000)]
Trailing whitespace.

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

13 years ago80-col violations.
Mikhail Glushenkov [Thu, 28 Oct 2010 19:32:47 +0000 (19:32 +0000)]
80-col violations.

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

13 years agoDo not rely on context to find file info. It is already provided as a separate field.
Devang Patel [Thu, 28 Oct 2010 19:14:28 +0000 (19:14 +0000)]
Do not rely on context to find file info. It is already provided as a separate field.

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

13 years agoFix relocations with renamed symbols.
Rafael Espindola [Thu, 28 Oct 2010 19:08:03 +0000 (19:08 +0000)]
Fix relocations with renamed symbols.

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

13 years agoReduce malloc thrashing.
Benjamin Kramer [Thu, 28 Oct 2010 18:41:23 +0000 (18:41 +0000)]
Reduce malloc thrashing.

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

13 years agoPLD, PLDW, PLI encodings, plus refactor their use of addrmode2.
Jim Grosbach [Thu, 28 Oct 2010 18:34:10 +0000 (18:34 +0000)]
PLD, PLDW, PLI encodings, plus refactor their use of addrmode2.

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

13 years agoAliases defined with .symver should copy the binding of the symbols they alias.
Rafael Espindola [Thu, 28 Oct 2010 18:33:03 +0000 (18:33 +0000)]
Aliases defined with .symver should copy the binding of the symbols they alias.
Move the existing patching for undefined symbols so that all the patching
is done in the same function.

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

13 years agoTechnically DIFile scope should also be handled here.
Devang Patel [Thu, 28 Oct 2010 17:30:52 +0000 (17:30 +0000)]
Technically DIFile scope should also be handled here.

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

13 years agorearrange ParseRegisterList.
Chris Lattner [Thu, 28 Oct 2010 17:23:41 +0000 (17:23 +0000)]
rearrange ParseRegisterList.

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

13 years agorefactor some code to simplify it, eliminating some owningptr's.
Chris Lattner [Thu, 28 Oct 2010 17:20:03 +0000 (17:20 +0000)]
refactor some code to simplify it, eliminating some owningptr's.

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

13 years agoTeach the DAG combiner to fold a splat of a splat. Radar 8597790.
Bob Wilson [Thu, 28 Oct 2010 17:06:14 +0000 (17:06 +0000)]
Teach the DAG combiner to fold a splat of a splat.  Radar 8597790.
Also do some minor refactoring to reduce indentation.

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

13 years agoUse the IDVal directly as there's no need to convert to std::string.
Roman Divacky [Thu, 28 Oct 2010 16:57:58 +0000 (16:57 +0000)]
Use the IDVal directly as there's no need to convert to std::string.
Pointed out by Chris!

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

13 years agoImplement .equ directive as a synonym to .set.
Roman Divacky [Thu, 28 Oct 2010 16:22:58 +0000 (16:22 +0000)]
Implement .equ directive as a synonym to .set.

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

13 years agoTestcase for PR8494 (invalid bitcode crashing the bitcode reader).
Duncan Sands [Thu, 28 Oct 2010 15:57:30 +0000 (15:57 +0000)]
Testcase for PR8494 (invalid bitcode crashing the bitcode reader).

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

13 years agoFix PR8494: when reading invalid bitcode, getTypeByID may return
Duncan Sands [Thu, 28 Oct 2010 15:47:26 +0000 (15:47 +0000)]
Fix PR8494: when reading invalid bitcode, getTypeByID may return
a null pointer.

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

13 years agoImplement R_X86_64_DTPOFF32.
Rafael Espindola [Thu, 28 Oct 2010 15:11:03 +0000 (15:11 +0000)]
Implement R_X86_64_DTPOFF32.

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

13 years agoImplement TLSLD.
Rafael Espindola [Thu, 28 Oct 2010 15:02:40 +0000 (15:02 +0000)]
Implement TLSLD.

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

13 years agoImplement DTPOFF.
Rafael Espindola [Thu, 28 Oct 2010 14:48:59 +0000 (14:48 +0000)]
Implement DTPOFF.

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

13 years agoDocument LLVM_BUILD_TESTS, LLVM_INCLUDE_TESTS. New convenience target
Oscar Fuentes [Thu, 28 Oct 2010 14:38:35 +0000 (14:38 +0000)]
Document LLVM_BUILD_TESTS, LLVM_INCLUDE_TESTS. New convenience target
UnitTests for building all the unit tests.

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

13 years agoImplement TLSLDM.
Rafael Espindola [Thu, 28 Oct 2010 14:37:09 +0000 (14:37 +0000)]
Implement TLSLDM.

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

13 years agoImplement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind.
Rafael Espindola [Thu, 28 Oct 2010 14:22:44 +0000 (14:22 +0000)]
Implement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind.

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

13 years agoReindent.
Mikhail Glushenkov [Thu, 28 Oct 2010 08:25:44 +0000 (08:25 +0000)]
Reindent.

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

13 years agoRe-commit 117518 and 117519 now that ARM MC test failures are out of the way.
Evan Cheng [Thu, 28 Oct 2010 06:47:08 +0000 (06:47 +0000)]
Re-commit 117518 and 117519 now that ARM MC test failures are out of the way.

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