- Mar 31, 2006
-
-
Evan Cheng authored
from a 128-bit vector. llvm-svn: 27304
-
Evan Cheng authored
llvm-svn: 27303
-
Chris Lattner authored
llvm-svn: 27302
-
Chris Lattner authored
llvm-svn: 27301
-
Chris Lattner authored
llvm-svn: 27300
-
Chris Lattner authored
Now all UnitTests/Vector/* tests pass on PPC. llvm-svn: 27299
-
Chris Lattner authored
This fixes UnitTests/Vector/simple.c with altivec. llvm-svn: 27298
-
Chris Lattner authored
to: test_extract_elt: alloc r3 = ar.pfs,0,1,0,0 adds r8 = 12, r32 ;; ldfs f8 = [r8] mov ar.pfs = r3 br.ret.sptk.many rp instead of: test_extract_elt: alloc r3 = ar.pfs,0,1,0,0 adds r8 = 28, r32 adds r9 = 24, r32 adds r10 = 20, r32 adds r11 = 16, r32 ;; ldfs f6 = [r8] ;; ldfs f6 = [r9] adds r8 = 12, r32 adds r9 = 8, r32 adds r14 = 4, r32 ;; ldfs f6 = [r10] ;; ldfs f6 = [r11] ldfs f8 = [r8] ;; ldfs f6 = [r9] ;; ldfs f6 = [r14] ;; ldfs f6 = [r32] mov ar.pfs = r3 br.ret.sptk.many rp llvm-svn: 27297
-
Chris Lattner authored
vector.ll:test_extract_elt2 into: _test_extract_elt2: lfd f1, 32(r3) blr instead of: _test_extract_elt2: lfd f0, 56(r3) lfd f0, 48(r3) lfd f0, 40(r3) lfd f1, 32(r3) lfd f0, 24(r3) lfd f0, 16(r3) lfd f0, 8(r3) lfd f0, 0(r3) blr llvm-svn: 27296
-
Chris Lattner authored
Generic/vector.ll:test_extract_elt on non-sse X86 systems. llvm-svn: 27294
-
Chris Lattner authored
needs to be promoted or expanded. Relegalize the scalar store once created. This fixes CodeGen/Generic/vector.ll:test1 on non-SSE x86 targets. llvm-svn: 27293
-
Jeff Cohen authored
llvm-svn: 27292
-
Chris Lattner authored
llvm-svn: 27291
-
Chris Lattner authored
identical instructions into a single instruction. For example, for: void test(vector float *x, vector float *y, int *P) { int v = vec_any_out(*x, *y); *x = (vector float)vec_cmpb(*x, *y); *P = v; } we now generate: _test: mfspr r2, 256 oris r6, r2, 49152 mtspr 256, r6 lvx v0, 0, r4 lvx v1, 0, r3 vcmpbfp. v0, v1, v0 mfcr r4, 2 stvx v0, 0, r3 rlwinm r3, r4, 27, 31, 31 xori r3, r3, 1 stw r3, 0(r5) mtspr 256, r2 blr instead of: _test: mfspr r2, 256 oris r6, r2, 57344 mtspr 256, r6 lvx v0, 0, r4 lvx v1, 0, r3 vcmpbfp. v2, v1, v0 mfcr r4, 2 *** vcmpbfp v0, v1, v0 rlwinm r4, r4, 27, 31, 31 stvx v0, 0, r3 xori r3, r4, 1 stw r3, 0(r5) mtspr 256, r2 blr Testcase here: CodeGen/PowerPC/vcmp-fold.ll llvm-svn: 27290
-
Chris Lattner authored
llvm-svn: 27288
-
Chris Lattner authored
llvm-svn: 27287
-
Chris Lattner authored
predicates to VCMPo nodes. llvm-svn: 27285
-
Chris Lattner authored
llvm-svn: 27284
-
Chris Lattner authored
llvm-svn: 27282
-
Chris Lattner authored
decimated vectors. This fixes UnitTests/Vector/sumarray-dbl.c llvm-svn: 27280
-
Chris Lattner authored
handling cases where the vector elements need promotion, expansion, and when the vector type itself needs to be decimated. llvm-svn: 27278
-
Chris Lattner authored
llvm-svn: 27277
-
Chris Lattner authored
llvm-svn: 27276
-
Evan Cheng authored
llvm-svn: 27275
-
Evan Cheng authored
llvm-svn: 27274
-
Chris Lattner authored
unpromoted element type. llvm-svn: 27273
-
Evan Cheng authored
llvm-svn: 27272
-
Evan Cheng authored
llvm-svn: 27271
-
Chris Lattner authored
llvm-svn: 27270
-
Chris Lattner authored
llvm-svn: 27268
-
Chris Lattner authored
directly correspond to intrinsics. llvm-svn: 27266
-
Chris Lattner authored
llvm-svn: 27265
-
Chris Lattner authored
llvm-svn: 27261
-
- Mar 30, 2006
-
-
Evan Cheng authored
Use pshufd, pshuhw, and pshulw to shuffle v4f32 if shufps doesn't match. Use shufps to shuffle v4f32 if pshufd, pshuhw, and pshulw don't match. llvm-svn: 27259
-
Evan Cheng authored
llvm-svn: 27257
-
Evan Cheng authored
llvm-svn: 27256
-
Evan Cheng authored
llvm-svn: 27255
-
Evan Cheng authored
For example, packsswb actually creates a v16i8 from a pair of v8i16. But since the intrinsic specification forces the output type to match the operands. llvm-svn: 27254
-
Evan Cheng authored
- Added SSE2 128-bit integer pack with signed saturation ops. - Added pshufhw and pshuflw ops. llvm-svn: 27252
-
- Mar 29, 2006
-
-
Evan Cheng authored
vector_shuffle undef. llvm-svn: 27250
-