Rafael Espindola
47970f96ac
initial implementation of addressing mode 5
...
llvm-svn: 31002
2006-10-17 18:04:53 +00:00
Jim Laskey
37679253ae
Clean up interface to getGlobalLinkName.
...
llvm-svn: 31001
2006-10-17 17:17:24 +00:00
Chris Lattner
8464c7e3e1
Reenable this pass, fixing the bugs in it.
...
It now correctly deletes unreachable blocks and blocks that are empty.
llvm-svn: 31000
2006-10-17 17:13:52 +00:00
Evan Cheng
d9bec725a2
Make sure operand does have size and element type operands.
...
llvm-svn: 30999
2006-10-17 17:06:35 +00:00
Rafael Espindola
d5a6eaec14
add the immediate to the Offset in eliminateFrameIndex
...
llvm-svn: 30998
2006-10-17 14:34:02 +00:00
Jim Laskey
620df3ea5f
Basic support for getGlobalLinkName.
...
llvm-svn: 30997
2006-10-17 13:41:07 +00:00
Rafael Espindola
31f59f5b94
add FSTD and FSTS
...
llvm-svn: 30996
2006-10-17 13:36:07 +00:00
Rafael Espindola
01400015fc
add FCPYS and FCPYD
...
llvm-svn: 30995
2006-10-17 13:13:23 +00:00
Jim Laskey
d266d999cb
Use S_debug for dwarf info.
...
llvm-svn: 30994
2006-10-17 11:30:57 +00:00
Evan Cheng
bf3e5a1d7a
Proper fix.
...
llvm-svn: 30993
2006-10-17 00:24:49 +00:00
Evan Cheng
36ab7976a0
One more try.
...
llvm-svn: 30992
2006-10-16 23:44:08 +00:00
Reid Spencer
c6aa794a41
Undo Chris' last patch, it caused a regression.
...
llvm-svn: 30991
2006-10-16 23:08:08 +00:00
Evan Cheng
1cf362ec18
Unbreak x86-64 build.
...
llvm-svn: 30990
2006-10-16 22:53:28 +00:00
Evan Cheng
2d9318cff1
Be careful when looking through a vbit_convert. Optimizing this:
...
(vector_shuffle
(vbitconvert (vbuildvector (copyfromreg v4f32), 1, v4f32), 4, f32),
(undef, undef, undef, undef), (0, 0, 0, 0), 4, f32)
to the
vbitconvert
is a very bad idea.
llvm-svn: 30989
2006-10-16 22:49:37 +00:00
Rafael Espindola
a156538e34
add fdivs e fdivd
...
llvm-svn: 30988
2006-10-16 21:50:04 +00:00
Rafael Espindola
4f61431679
expand ISD::SHL_PARTS, ISD::SRA_PARTS and ISD::SRL_PARTS
...
llvm-svn: 30987
2006-10-16 21:10:32 +00:00
Evan Cheng
04bec886a9
Added a X86CompilationCallback variant which saves XMM argument registers for targets with SSE.
...
llvm-svn: 30986
2006-10-16 21:01:55 +00:00
Evan Cheng
b4d8323e54
Proper fix for rdar://problem/4770604 Thanks to Stuart Hastings!
...
llvm-svn: 30985
2006-10-16 21:00:37 +00:00
Jim Laskey
06f4428abc
Pass AliasAnalysis thru to DAGCombiner.
...
llvm-svn: 30984
2006-10-16 20:52:31 +00:00
Chris Lattner
3bfbb5eabd
add a ReplaceMBBInJumpTables method
...
llvm-svn: 30983
2006-10-16 20:41:42 +00:00
Jim Laskey
5fe261bc52
Global name regression.
...
llvm-svn: 30982
2006-10-16 19:38:41 +00:00
Rafael Espindola
25fbeb5ec2
define the DFPBinOp class
...
llvm-svn: 30981
2006-10-16 18:39:22 +00:00
Rafael Espindola
57dc40a3a8
add the FPBinOp class
...
llvm-svn: 30980
2006-10-16 18:32:36 +00:00
Rafael Espindola
8a40de94f2
define the Addr1BinOp class
...
llvm-svn: 30979
2006-10-16 18:18:14 +00:00
Rafael Espindola
6554b1014d
define the IntBinOp class and use it to implement the multiply instructions
...
llvm-svn: 30978
2006-10-16 17:57:20 +00:00
Rafael Espindola
71ae8c3d4a
fix assembly syntax
...
llvm-svn: 30977
2006-10-16 17:38:12 +00:00
Rafael Espindola
d255bfb09b
implement LDRB, LDRSB, LDRH and LDRSH
...
llvm-svn: 30976
2006-10-16 17:17:22 +00:00
Rafael Espindola
93359fa883
implement smull and umull
...
llvm-svn: 30975
2006-10-16 16:33:29 +00:00
Evan Cheng
ca5eaf4020
Avoid getting into an infinite loop when -disable-x86-shuffle-opti is specified.
...
llvm-svn: 30974
2006-10-16 06:36:00 +00:00
Evan Cheng
c73547a71d
SelectScalarSSELoad should call CanBeFoldedBy as well.
...
llvm-svn: 30973
2006-10-16 06:34:55 +00:00
Evan Cheng
f872538d4b
Passing isel root and use operands to ComplexPattern functions, these should do the usual load folding checks as well.
...
llvm-svn: 30972
2006-10-16 06:33:44 +00:00
Chris Lattner
9ecd9bcde4
regenerate
...
llvm-svn: 30971
2006-10-15 23:27:25 +00:00
Chris Lattner
2ac6ca0f82
Produce a useful error message for Regression/Verifier/2006-10-15-AddrLabel.ll
...
llvm-svn: 30970
2006-10-15 23:26:46 +00:00
Chris Lattner
a5383a5b2d
testcase that causes the asmparser to assert
...
llvm-svn: 30969
2006-10-15 23:26:28 +00:00
Chris Lattner
5a4d067b26
label* is not a valid type, add an assertion.
...
llvm-svn: 30968
2006-10-15 23:21:12 +00:00
Chris Lattner
fd983f91e7
fix a buggy check that accidentally disabled this xform
...
llvm-svn: 30967
2006-10-15 22:42:15 +00:00
Chris Lattner
99ce7667fb
clarify
...
llvm-svn: 30966
2006-10-15 20:05:59 +00:00
Reid Spencer
88ad34206e
Document the VAArg, and vector instruction opcodes.
...
llvm-svn: 30965
2006-10-15 00:11:05 +00:00
Anton Korobeynikov
61d88967b9
Align stack size to DWORD boundary
...
llvm-svn: 30964
2006-10-14 20:53:35 +00:00
Rafael Espindola
c426cede28
expand ISD::BRCOND
...
llvm-svn: 30963
2006-10-14 17:59:54 +00:00
Rafael Espindola
38c602f658
fix some fp condition codes
...
use non trapping comparison instructions
llvm-svn: 30962
2006-10-14 13:42:53 +00:00
Jim Laskey
1070dfefba
Tidy up after truncstore changes.
...
llvm-svn: 30961
2006-10-14 12:14:27 +00:00
Evan Cheng
078a38abd7
One cyclic dag a day is good for ya...
...
llvm-svn: 30960
2006-10-14 08:35:02 +00:00
Evan Cheng
bfd74c6d9c
Debug tweak.
...
llvm-svn: 30959
2006-10-14 08:34:06 +00:00
Evan Cheng
6c8de88f88
Corrected load folding check. We need to start from the root of the sub-dag
...
being matched and ensure there isn't a non-direct path to the load (i.e. a
path that goes out of the sub-dag.)
llvm-svn: 30958
2006-10-14 08:33:25 +00:00
Evan Cheng
c8b9d15614
Start checking from the root of the matched sub-tree.
...
llvm-svn: 30957
2006-10-14 08:30:53 +00:00
Evan Cheng
513dc7ed5f
When checking if a load can be folded, we check if there is any non-direct
...
way to reach the load via any nodes that would be folded. Start from the
root of the matched sub-tree.
llvm-svn: 30956
2006-10-14 08:30:15 +00:00
Chris Lattner
08aa96b824
Make sure that the node returned by SimplifySetCC is added to the worklist
...
so that it can be deleted if unused.
llvm-svn: 30955
2006-10-14 03:52:46 +00:00
Chris Lattner
3fbcd8519e
testcase for recent dag combiner patch. Before the entry bb was:
...
_test:
stwu r1, -80(r1)
stw r1, 76(r1)
mflr r11
stw r11, 88(r1)
rlwinm r2, r4, 0, 30, 31
cmplwi cr7, r2, 2
mfcr r2
rlwinm r2, r2, 30, 31, 31
cmplwi cr0, r2, 0
bne cr0, LBB1_2 ;UnifiedReturnBlock
after it is:
_test:
stwu r1, -80(r1)
stw r1, 76(r1)
mflr r11
stw r11, 88(r1)
rlwinm r2, r4, 0, 30, 31
cmplwi cr0, r2, 2
bgt cr0, LBB1_2 ;UnifiedReturnBlock
llvm-svn: 30954
2006-10-14 03:40:02 +00:00
Chris Lattner
a515f322f3
fold setcc of a setcc.
...
llvm-svn: 30953
2006-10-14 01:02:29 +00:00