Evan Cheng
0ba896c75b
Added SSE (and other) entries to foldMemoryOperand().
...
llvm-svn: 27716
2006-04-14 23:33:27 +00:00
Evan Cheng
00a5b3d9d3
Some clean up
...
llvm-svn: 27715
2006-04-14 23:32:40 +00:00
Chris Lattner
559c8ba466
Allow undef in a shuffle mask
...
llvm-svn: 27714
2006-04-14 23:19:08 +00:00
Chris Lattner
0875d94567
Move these ctors out of line
...
llvm-svn: 27713
2006-04-14 22:20:32 +00:00
Chris Lattner
5876571afc
These instructions always return a packed vector. Improve the class definitions to expose this fact.
...
llvm-svn: 27712
2006-04-14 22:20:07 +00:00
Evan Cheng
5d247f81c1
Last few SSE3 intrinsics.
...
llvm-svn: 27711
2006-04-14 21:59:03 +00:00
Chris Lattner
3323ce165d
Teach scalarrepl to promote unions of vectors and floats, producing
...
insert/extractelement operations. This implements
Transforms/ScalarRepl/vector_promote.ll
llvm-svn: 27710
2006-04-14 21:42:41 +00:00
Chris Lattner
1c0ef4385d
New testcase, checking to see we can turn this code:
...
void test(vector float *F, float f) {
vector float G = *F + *F;
*((float*)&G) = f;
*F = G + G;
}
void test2(vector float *F, float f) {
vector float G = *F + *F;
((float*)&G)[2] = f;
*F = G + G;
}
void test3(vector float *F, float *f) {
vector float G = *F + *F;
*f = ((float*)&G)[2];
}
void test4(vector float *F, float *f) {
vector float G = *F + *F;
*f = *((float*)&G);
}
into insert/extract element operations with no memory traffic.
llvm-svn: 27709
2006-04-14 21:41:54 +00:00
Tanya Lattner
b138bbe85b
Adding back vector instructions to keep in mainline.
...
llvm-svn: 27704
2006-04-14 19:24:33 +00:00
Tanya Lattner
8333c7d736
Removing unimplemented vector instructions from language referrence.
...
llvm-svn: 27703
2006-04-14 19:07:42 +00:00
Reid Spencer
83ee73fdb8
Correct the Superclasses list for GlobalVariable and Function to indicate
...
that they are "Constant" as they derive from GlobalValue. Also, fix some of
the wording where it mentions this.
Patch inspired by Nai Xia.
llvm-svn: 27701
2006-04-14 14:11:48 +00:00
Reid Spencer
9a20587c27
Allow an option, -with-externals, to be specified that provides the location
...
of the external tests. This turns into --with-externals option to configure.
llvm-svn: 27700
2006-04-14 13:53:56 +00:00
Evan Cheng
3bd605397b
Misc. SSE2 intrinsics: clflush, lfench, mfence
...
llvm-svn: 27699
2006-04-14 07:43:12 +00:00
Evan Cheng
e349d01acf
We were not adjusting the frame size to ensure proper alignment when alloca /
...
vla are present in the function. This causes a crash when a leaf function
allocates space on the stack used to store / load with 128-bit SSE
instructions.
llvm-svn: 27698
2006-04-14 07:26:43 +00:00
Evan Cheng
8d76f3922b
New entry
...
llvm-svn: 27697
2006-04-14 07:24:04 +00:00
Reid Spencer
ef56d92d6c
Don't print out the install command for Intrinsics.gen unless VERBOSE mode.
...
llvm-svn: 27696
2006-04-14 06:32:31 +00:00
Chris Lattner
086e986e94
Make this assertion better
...
llvm-svn: 27695
2006-04-14 06:08:35 +00:00
Chris Lattner
174bccb676
Force a specific config, because this test fails in certain configs otherwise.
...
llvm-svn: 27694
2006-04-14 06:06:51 +00:00
Chris Lattner
4211ca9108
Move the rest of the PPCTargetLowering::LowerOperation cases out into
...
separate functions, for simplicity and code clarity.
llvm-svn: 27693
2006-04-14 06:01:58 +00:00
Chris Lattner
19e9055eb5
Pull the VECTOR_SHUFFLE and BUILD_VECTOR lowering code out into separate
...
functions, which makes the code much cleaner :)
llvm-svn: 27692
2006-04-14 05:19:18 +00:00
Chris Lattner
68c650ca45
Implement value #'ing for vector operations, implementing
...
Regression/Transforms/GCSE/vectorops.ll
llvm-svn: 27691
2006-04-14 05:10:20 +00:00
Chris Lattner
1c4ecc0c73
new testcase, vector operations should be CSE'd
...
llvm-svn: 27690
2006-04-14 05:09:53 +00:00
Chris Lattner
326ff4eb93
Remove this test, there is no need to test GCC's bugs
...
llvm-svn: 27689
2006-04-14 04:47:26 +00:00
Reid Spencer
08a154e1a7
Ahem. HEAD -> 1.8cvs not 1.7 (I'm an idiot).
...
llvm-svn: 27687
2006-04-14 03:01:27 +00:00
Reid Spencer
89702afa0e
remove the "cvs" part of the version number for the release branch.
...
llvm-svn: 27686
2006-04-14 02:55:43 +00:00
Evan Cheng
eb0063a34f
pcmpeq* and pcmpgt* intrinsics.
...
llvm-svn: 27685
2006-04-14 01:39:53 +00:00
Evan Cheng
16287444ff
psll*, psrl*, and psra* intrinsics.
...
llvm-svn: 27684
2006-04-14 00:14:05 +00:00
Reid Spencer
64f6c11c59
Remove the .cvsignore file so this directory can be pruned.
...
llvm-svn: 27683
2006-04-13 22:00:10 +00:00
Reid Spencer
497ecf6840
Remove .cvsignore so that this directory can be pruned.
...
llvm-svn: 27682
2006-04-13 21:59:03 +00:00
Chris Lattner
548ee45cac
My addition of the xfail marker threw off the line #. move it.
...
llvm-svn: 27678
2006-04-13 21:19:13 +00:00
Reid Spencer
fabdf8087e
Use quotes properly so that the possibility of a null variable set is
...
eliminated. This can happen, for example, if LLVM is configured without
llvm-gcc in which case things like LLVMGCC_VERSION will be empty. In
such cases, deja-gnu fails with:
can't read "llvmgcc_version": no such variable
because it sees:
set llvmgcc_version
instead of:
set llvmgcc_version ""
llvm-svn: 27676
2006-04-13 20:33:59 +00:00
Andrew Lenharth
d911f0d545
from the linux kernel
...
llvm-svn: 27674
2006-04-13 19:50:07 +00:00
Chris Lattner
612e84dd8b
Fix this regex to match what llvmgcc4 produces also
...
llvm-svn: 27673
2006-04-13 19:46:16 +00:00
Andrew Lenharth
4aa3001625
Handle some kernel code than ends in [0 x sbyte]. I think this is safe
...
llvm-svn: 27672
2006-04-13 19:31:49 +00:00
Reid Spencer
709eaacb36
Expand some code with temporary variables to rid ourselves of the warning
...
about "dereferencing type-punned pointer will break strict-aliasing rules"
llvm-svn: 27671
2006-04-13 18:29:58 +00:00
Chris Lattner
ef023cb6e9
Fix an incorrect prototype for this intrinsic, fixing
...
CFrontend/2003-08-18-SigSetJmp.c with llvm-gcc3. This is part of PR733.
llvm-svn: 27670
2006-04-13 18:23:48 +00:00
Chris Lattner
ce5ee73be6
Try xfailing this
...
llvm-svn: 27669
2006-04-13 18:15:24 +00:00
Evan Cheng
a84319719c
Doh. PANDrm, etc. are not commutable.
...
llvm-svn: 27668
2006-04-13 18:11:28 +00:00
Andrew Lenharth
4819ab573d
fix this for the more restrictive linkage
...
llvm-svn: 27667
2006-04-13 17:52:32 +00:00
Chris Lattner
d76ecc9678
These tests are now xfailed for llvmgcc4. This is PR735, unlikely to be
...
resolved before 1.7 :(
llvm-svn: 27666
2006-04-13 17:35:36 +00:00
Chris Lattner
c8be43885e
Only look at .ll files in this directory
...
llvm-svn: 27665
2006-04-13 17:32:53 +00:00
Chris Lattner
ee98069488
This file is an invalid C file, test that it is properly rejected
...
llvm-svn: 27664
2006-04-13 17:32:03 +00:00
Chris Lattner
49c1dc2466
Another case where a dead cast was causing the test to spuriously
...
fail with the new front-end.
llvm-svn: 27663
2006-04-13 17:28:28 +00:00
Chris Lattner
2d2f3ef792
Don't get confused by dead casts.
...
llvm-svn: 27662
2006-04-13 17:26:54 +00:00
Chris Lattner
3b84d9a162
Fix an accidental commit.
...
llvm-svn: 27661
2006-04-13 17:21:49 +00:00
Chris Lattner
138058166f
This test fails and I don't know why, xfail it until andrew gets a chance to
...
look at it.
llvm-svn: 27660
2006-04-13 17:19:34 +00:00
Chris Lattner
954ea6e2fc
Oops, move misplaced test
...
llvm-svn: 27659
2006-04-13 17:18:42 +00:00
Chris Lattner
b8ec695455
These are only XFAILs with llvmgcc3, they pass with llvmgcc4
...
llvm-svn: 27658
2006-04-13 17:16:21 +00:00
Chris Lattner
883fb053bd
Force non-darwin targets to use a static relo model. This fixes PR734,
...
tested by CodeGen/Generic/vector.ll
llvm-svn: 27657
2006-04-13 17:10:48 +00:00
Chris Lattner
b88cb094ff
Add a run with an unusual target triple, revert the patch that sent output to
...
dev null as it broke the test and doesn't add anything.
llvm-svn: 27656
2006-04-13 17:10:03 +00:00