Chris Lattner
d7cabc0f81
Fix miscodegen of V_SET0 in PPC.
...
llvm-svn: 26836
2006-03-18 00:40:36 +00:00
Nate Begeman
793c8136ae
Fix subfic to match subc by default instead of sub so that it is correctly
...
cost-modeled as producing a flag. This fixes the test I just added for neg
llvm-svn: 26835
2006-03-17 22:41:37 +00:00
Nate Begeman
079b67fb45
Add a missing testcase
...
llvm-svn: 26834
2006-03-17 22:39:45 +00:00
Evan Cheng
f4774c9091
Darwin should use _setjmp/_longjmp instead of setjmp/longjmp.
...
llvm-svn: 26833
2006-03-17 20:31:41 +00:00
Chris Lattner
40613e6163
new testcase
...
llvm-svn: 26832
2006-03-17 20:04:40 +00:00
Evan Cheng
ee1a44d5d8
Move some pattern fragments to the right files.
...
llvm-svn: 26831
2006-03-17 19:55:52 +00:00
Chris Lattner
3358842eb5
add a couple enum values
...
llvm-svn: 26830
2006-03-17 19:53:59 +00:00
Chris Lattner
da6506a1f2
add a couple of enum values
...
llvm-svn: 26829
2006-03-17 19:53:41 +00:00
Evan Cheng
fa1b885135
Allow users of iv / stride to be rewritten with expression that is a multiply
...
of a smaller stride even if they have a common loop invariant expression part.
llvm-svn: 26828
2006-03-17 19:52:23 +00:00
Evan Cheng
0517ea7b2b
Add a lsr common loop invariant hoisting test case
...
llvm-svn: 26827
2006-03-17 19:45:54 +00:00
Chris Lattner
fad5f1053f
new testcase that broke the new f.e.
...
llvm-svn: 26826
2006-03-17 18:01:17 +00:00
Reid Spencer
ee167cb334
Use the <tt> tag instead of <pre> tag to get code/file/warning lists to
...
wrap but also still be in a fixed-width font.
llvm-svn: 26825
2006-03-17 17:43:01 +00:00
Chris Lattner
647503bccc
Disable x86 fastcc from passing args in registers
...
llvm-svn: 26824
2006-03-17 17:27:47 +00:00
Reid Spencer
6bb4a1c2e2
Fix a typo.
...
llvm-svn: 26823
2006-03-17 08:04:25 +00:00
Reid Spencer
5f06b17693
Fix use of LEVEL.
...
llvm-svn: 26822
2006-03-17 07:39:44 +00:00
Reid Spencer
86ed2295c0
Two fixes:
...
1. Allow building of Intrinsics.gen to work for srcdir != objdir
2. Add a rule for installation of Intrinsics.gen.
llvm-svn: 26819
2006-03-17 06:27:06 +00:00
Chris Lattner
a71bc63ced
Parameterize the number of integer arguments to pass in registers
...
llvm-svn: 26818
2006-03-17 05:10:20 +00:00
Evan Cheng
1f5cb60f28
Also fold MOV8r0, MOV16r0, MOV32r0 + store to MOV8mi, MOV16mi, and MOV32mi.
...
llvm-svn: 26817
2006-03-17 02:36:22 +00:00
Evan Cheng
fc79bdafbe
Add some missing entries to X86RegisterInfo::foldMemoryOperand(). e.g.
...
ADD32ri8.
llvm-svn: 26816
2006-03-17 02:25:01 +00:00
Evan Cheng
d16fa97974
- Nuke 16-bit SBB instructions. We'll never use them.
...
- Nuke a bogus comment.
llvm-svn: 26815
2006-03-17 02:24:04 +00:00
Nate Begeman
42736d46b2
Remove BRTWOWAY*
...
Make the PPC backend not dependent on BRTWOWAY_CC and make the branch
selector smarter about the code it generates, fixing a case in the
readme.
llvm-svn: 26814
2006-03-17 01:40:33 +00:00
Chris Lattner
87dbd49cbe
remove dead variable
...
llvm-svn: 26813
2006-03-16 23:52:08 +00:00
Chris Lattner
dbdfef7604
add an assert to get a slightly better msg about this problem
...
llvm-svn: 26812
2006-03-16 23:16:17 +00:00
Chris Lattner
7e80a5a16b
Fix a problem fully scalarizing values.
...
llvm-svn: 26811
2006-03-16 23:05:19 +00:00
Evan Cheng
33055a8aba
A new entry.
...
llvm-svn: 26810
2006-03-16 22:44:22 +00:00
Nate Begeman
63c4456867
Notes on how to kill the eeevil brtwoway, and make ppc branch selector
...
more target independant, generate better code, and be less conservative.
llvm-svn: 26809
2006-03-16 22:37:48 +00:00
Chris Lattner
f2008cb73b
Strangely, calls clobber call-clobbered vector regs. Whodathoughtit?
...
llvm-svn: 26808
2006-03-16 22:35:59 +00:00
Chris Lattner
8a756c5171
add a note
...
llvm-svn: 26807
2006-03-16 22:25:55 +00:00
Chris Lattner
57773fdac1
teach the ppc backend how to spill/reload vector regs
...
llvm-svn: 26806
2006-03-16 22:24:02 +00:00
Chris Lattner
661ee5d3c1
add callee saved vector regs
...
llvm-svn: 26805
2006-03-16 22:07:06 +00:00
Evan Cheng
0e1abe6e19
Bug fix: condition inverted.
...
llvm-svn: 26804
2006-03-16 22:02:48 +00:00
Evan Cheng
db35180b27
For each loop, keep track of all the IV expressions inserted indexed by
...
stride. For a set of uses of the IV of a stride which is a multiple
of another stride, do not insert a new IV expression. Rather, reuse the
previous IV and rewrite the uses as uses of IV expression multiplied by
the factor.
e.g.
x = 0 ...; x ++
y = 0 ...; y += 4
then use of y can be rewritten as use of 4*x for x86.
llvm-svn: 26803
2006-03-16 21:53:05 +00:00
Evan Cheng
cad75d9f0c
Added a way for TargetLowering to specify what values can be used as the
...
scale component of the target addressing mode.
llvm-svn: 26802
2006-03-16 21:47:42 +00:00
Chris Lattner
7f5361757b
in functions that use a lot of callee saved regs, this can be more than
...
5 instructions away.
llvm-svn: 26801
2006-03-16 21:31:45 +00:00
Chris Lattner
bf153651b1
Add support for copying registers. still needed: spilling and reloading them
...
llvm-svn: 26800
2006-03-16 20:03:58 +00:00
Chris Lattner
413bb13b27
Add support for CopyFromReg from vector values. Note: this doesn't support
...
illegal vector types yet!
llvm-svn: 26799
2006-03-16 19:57:50 +00:00
Chris Lattner
34f2e70f60
Teach CreateRegForValue how to handle vector types.
...
llvm-svn: 26798
2006-03-16 19:51:18 +00:00
Chris Lattner
eac8e98036
set TransformToType correctly for vector types.
...
llvm-svn: 26797
2006-03-16 19:50:01 +00:00
Chris Lattner
c7aaa3cc89
Add markers for the first and last vector value type.
...
llvm-svn: 26796
2006-03-16 19:42:44 +00:00
Nate Begeman
cbca1b3d14
Another case we could do better on.
...
llvm-svn: 26795
2006-03-16 18:50:44 +00:00
Chris Lattner
980763ddd2
New testcase, the new CFE compiles this into insertelement instructions, the
...
old one crashes.
llvm-svn: 26794
2006-03-16 18:47:51 +00:00
Chris Lattner
b5d0896994
Save/restore VRSAVE once per function, not once per block.
...
llvm-svn: 26793
2006-03-16 18:25:23 +00:00
Jim Laskey
940c39aa65
Typo.
...
llvm-svn: 26792
2006-03-16 18:15:12 +00:00
Chris Lattner
aab65612b8
Fix a typo Eric van Riet Paap noticed
...
llvm-svn: 26791
2006-03-16 16:14:59 +00:00
Reid Spencer
2c7c9cf597
Add a RUN: line so this test doesn't fail.
...
llvm-svn: 26790
2006-03-16 03:05:57 +00:00
Chris Lattner
4fd1599ab1
add support for the bitconvert node
...
llvm-svn: 26789
2006-03-16 01:29:53 +00:00
Chris Lattner
95577cb3cd
add support for vector->vector casts
...
llvm-svn: 26788
2006-03-15 22:19:46 +00:00
Chris Lattner
7c8518a21d
Add a note, this code should be moved to the dag combiner.
...
llvm-svn: 26787
2006-03-15 22:19:18 +00:00
Chris Lattner
4fbdb99abb
minor changes so that GCC builtin can be specified before the Intrinsic info,
...
add some more PPC intrinsics.
llvm-svn: 26786
2006-03-15 19:23:40 +00:00
Chris Lattner
b26656cc15
Teach the strip pass to strip type names in addition to value names. This
...
is fallout from the type/value split in the symtab long long ago :)
llvm-svn: 26785
2006-03-15 19:22:41 +00:00