Bruno Cardoso Lopes
9d4a11d4c6
Move condition out to prepare for more matching
...
llvm-svn: 112805
2010-09-02 04:20:26 +00:00
Bruno Cardoso Lopes
1b9095fff1
Remove checking for isUNPCKL_v_undef_Mask, the specific node is already emitted for it
...
llvm-svn: 112804
2010-09-02 03:57:58 +00:00
NAKAMURA Takumi
500a204a62
llvm::FindExecutable(): Retrieve the name with suffix.exe, if available.
...
bugpoint uses it.
llvm-svn: 112803
2010-09-02 03:46:04 +00:00
NAKAMURA Takumi
f5566eebf8
test/loop-strength-reduce4: Add explicit triplet for Win32 host.
...
llvm-svn: 112802
2010-09-02 03:45:58 +00:00
NAKAMURA Takumi
8e620796b6
test/twoaddr-coalesce: Do not use @main.
...
Win32 codegen emits implicit invoking __main into, to fail.
llvm-svn: 112801
2010-09-02 03:45:51 +00:00
Bruno Cardoso Lopes
dcdab94661
become more strict about when it's safe to use X86ISD::MOVLPS
...
llvm-svn: 112799
2010-09-02 02:35:51 +00:00
Eric Christopher
6c3fa8c78f
Clang's -ccc-host-triple was ignoring the arch specifier on my triple,
...
I don't need to implement this quite yet - and not for ConstantInt anyhow.
llvm-svn: 112798
2010-09-02 02:30:46 +00:00
Eric Christopher
cf0b12d117
This should be TargetMaterializeConstant instead.
...
llvm-svn: 112795
2010-09-02 01:48:11 +00:00
Eric Christopher
9dc3582a82
One definition of isThumb is plenty, thanks.
...
llvm-svn: 112793
2010-09-02 01:39:14 +00:00
Jim Grosbach
bb3bfa20e1
Remove trailing whitespace
...
llvm-svn: 112790
2010-09-02 01:02:06 +00:00
Eric Christopher
3aa2bb55d8
Rework arm fast-isel load and store handling. Move offset computation
...
into the "address selection" routine and handle constant materialization
for stores.
llvm-svn: 112788
2010-09-02 00:53:56 +00:00
Jim Grosbach
82a4ac2c83
Add a bit of debug output for register scavenging
...
llvm-svn: 112787
2010-09-02 00:51:37 +00:00
Chris Lattner
67bb18f68c
updates to make it clear that this applies to clang and other llvm subprojects.
...
llvm-svn: 112781
2010-09-02 00:09:17 +00:00
Jim Grosbach
94a445d9d1
trivial cleanup
...
llvm-svn: 112779
2010-09-02 00:02:26 +00:00
Jim Grosbach
2a3afa421b
Simplify the tGPR register class now that the register allocators know not
...
to try to allocate reserved registers.
llvm-svn: 112774
2010-09-01 23:50:23 +00:00
Bob Wilson
3348d2eb50
Remove NEON vmull, vmlal, and vmlsl intrinsics, replacing them with multiply,
...
add, and subtract operations with zero-extended or sign-extended vectors.
Update tests. Add auto-upgrade support for the old intrinsics.
llvm-svn: 112773
2010-09-01 23:50:19 +00:00
Dan Gohman
bc87387508
Reword this comment. Don't mention outs(), as that's not what
...
this code is actually testing for.
llvm-svn: 112767
2010-09-01 23:33:02 +00:00
Chris Lattner
b1c861e28c
deepen my MMX/SRoA hack to avoid hurting non-x86 codegen.
...
llvm-svn: 112763
2010-09-01 23:09:27 +00:00
Bruno Cardoso Lopes
b73f0cbc7a
Revert r112689, avoid those kind of checks cause they mess up with mmx
...
llvm-svn: 112760
2010-09-01 22:59:03 +00:00
Jim Grosbach
9df54659d3
Tweak to ignoring reserved regs. The allocator was occasionally still looking
...
at them since they'd end up in the register weights list. Tell it to stop
doing that.
llvm-svn: 112756
2010-09-01 22:48:34 +00:00
Dale Johannesen
e7c3ecd9dd
Recommit with changes. Comment out palignr for the
...
moment, as there's a testcase that uses it and expects it
to be subject to optimizations; we won't be doing that.
Some adjustments based on feedback from Bill.
llvm-svn: 112754
2010-09-01 22:43:48 +00:00
Bruno Cardoso Lopes
601bf4c6d3
Using target specific nodes for shuffle nodes makes the mask
...
check more strict, breaking some cases not checked in the
testsuite, but also exposes some foldings not done before,
as this example:
movaps (%rdi), %xmm0
movaps (%rax), %xmm1
movaps %xmm0, %xmm2
movss %xmm1, %xmm2
shufps $36, %xmm2, %xmm0
now is generated as:
movaps (%rdi), %xmm0
movaps %xmm0, %xmm1
movlps (%rax), %xmm1
shufps $36, %xmm1, %xmm0
llvm-svn: 112753
2010-09-01 22:33:20 +00:00
Eric Christopher
abf61f76c9
Some basic store support.
...
llvm-svn: 112752
2010-09-01 22:16:27 +00:00
Jakob Stoklund Olesen
fe11c81560
Teach RemoveCopyByCommutingDef to check all aliases, not just subregisters.
...
This caused a miscompilation in WebKit where %RAX had conflicting defs when
RemoveCopyByCommutingDef was commuting a %EAX use.
llvm-svn: 112751
2010-09-01 22:15:35 +00:00
Dale Johannesen
8ac2805d6f
Apparently only Darwin passes long double misaligned. Compensate.
...
llvm-svn: 112748
2010-09-01 21:57:20 +00:00
Jim Grosbach
69ffc23491
tidy up trailing whitespace and an 80 column violation.
...
llvm-svn: 112746
2010-09-01 21:48:06 +00:00
Dan Gohman
d0dc80485c
Fix loop unswitching's assumption that a code path which either
...
infinite loops or exits will eventually exit. This fixes PR5373.
llvm-svn: 112745
2010-09-01 21:46:45 +00:00
Dale Johannesen
8f257c1f83
Revert 112740, it broke some clang tests somehow...
...
llvm-svn: 112744
2010-09-01 21:36:44 +00:00
Jim Grosbach
250d5e6af4
cleanup per feedback. use a helper function for getting the first non-reserved
...
physical register in a register class. Make sure to assert if the register
class is empty.
llvm-svn: 112743
2010-09-01 21:34:41 +00:00
Jim Grosbach
6de7c3ef19
The register allocator shouldn't consider allocating reserved registers. PBQP version.
...
llvm-svn: 112742
2010-09-01 21:23:03 +00:00
Jim Grosbach
18fc90c535
The register allocator shouldn't consider allocating reserved registers.
...
r112728 did this for fast regalloc.
llvm-svn: 112741
2010-09-01 21:04:27 +00:00
Dale Johannesen
20877c9c79
Add a few more missing MMX operations. This should be it.
...
llvm-svn: 112740
2010-09-01 21:03:03 +00:00
Chris Lattner
070f76fc43
update the tutorial to use CreateFAdd to create fp operations.
...
llvm-svn: 112733
2010-09-01 20:09:20 +00:00
Jim Grosbach
4672574f24
The register allocator shouldn't consider allocating reserved registers.
...
llvm-svn: 112728
2010-09-01 19:28:41 +00:00
Owen Anderson
ef4f527b13
Disable CorrelatedValuePropagation while I track down selfhost failures.
...
llvm-svn: 112727
2010-09-01 19:20:46 +00:00
Jim Grosbach
f727f525cd
tidy up a few 80-column and trailing whitespace bits.
...
llvm-svn: 112726
2010-09-01 19:16:29 +00:00
Bill Wendling
988287ae88
The output of opt -stats must be sent to stderr. Patch by NAKAMURA Takumi!
...
llvm-svn: 112724
2010-09-01 18:32:56 +00:00
Owen Anderson
0ee04fbdc8
Tentatively add correlated value propagation to the set of standard passes.
...
llvm-svn: 112723
2010-09-01 18:30:15 +00:00
Owen Anderson
e036dd5b0b
JumpThreading keeps LazyValueInfo up to date, so we don't need to rerun it
...
if we schedule another LVI-using pass afterwards.
llvm-svn: 112722
2010-09-01 18:27:22 +00:00
Eric Christopher
92238b2b5a
Add some more load types in.
...
llvm-svn: 112721
2010-09-01 18:01:32 +00:00
Eric Christopher
f72b7040a2
Speculatively revert 112699 and 112702, they seem to be causing
...
self host errors on clang-x86-64.
llvm-svn: 112719
2010-09-01 17:29:10 +00:00
Chris Lattner
707d1b96a2
have the makefiles check the llvm-config error code instead of charging
...
on an producing weird link errors. Patch by Yuri Gribov!
llvm-svn: 112714
2010-09-01 16:11:17 +00:00
Chris Lattner
118bf38c3f
dead code patrol
...
llvm-svn: 112713
2010-09-01 16:06:39 +00:00
Chris Lattner
b911e51b26
zap dead code.
...
llvm-svn: 112712
2010-09-01 16:04:34 +00:00
Chris Lattner
b74759a9fa
temporarily revert r112664, it is causing a decoding conflict, and
...
the testcases should be merged.
llvm-svn: 112711
2010-09-01 16:00:50 +00:00
Chris Lattner
caef10c4d4
zap dead code.
...
llvm-svn: 112708
2010-09-01 15:44:05 +00:00
Chris Lattner
97758ab924
remove dead code.
...
llvm-svn: 112707
2010-09-01 15:39:31 +00:00
Dan Gohman
f9e09104f1
Make tool_output_file's raw_ostream instance a member variable instead
...
of a base class.
This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.
llvm-svn: 112706
2010-09-01 14:20:41 +00:00
Dan Gohman
5f2118dd6f
Add an interface for unregistering a file from the FilesToRemove list.
...
llvm-svn: 112705
2010-09-01 14:17:34 +00:00
Michael J. Spencer
e2f3acedf8
COFF: Update tests to reflect changes in last commit.
...
llvm-svn: 112704
2010-09-01 14:15:31 +00:00