1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 20:43:44 +02:00
Commit Graph

24069 Commits

Author SHA1 Message Date
Chris Lattner
eec81793f9 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
93829fa037 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
82586d100d Don't get confused by dead casts.
llvm-svn: 27662
2006-04-13 17:26:54 +00:00
Chris Lattner
0c06377b9c Fix an accidental commit.
llvm-svn: 27661
2006-04-13 17:21:49 +00:00
Chris Lattner
6cddb81c90 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
1b60100f18 Oops, move misplaced test
llvm-svn: 27659
2006-04-13 17:18:42 +00:00
Chris Lattner
f2663af875 These are only XFAILs with llvmgcc3, they pass with llvmgcc4
llvm-svn: 27658
2006-04-13 17:16:21 +00:00
Chris Lattner
569ea9c6dd 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
2c017add7e 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
Chris Lattner
84304b7661 Update a count, this test now passes.
llvm-svn: 27655
2006-04-13 16:52:13 +00:00
Chris Lattner
cec07adf4d add a note, move an altivec todo to the altivec list.
llvm-svn: 27654
2006-04-13 16:48:00 +00:00
Andrew Lenharth
bffed48656 linear -> constant time
llvm-svn: 27652
2006-04-13 13:43:31 +00:00
Reid Spencer
b08854af39 Add the README files to the distribution.
llvm-svn: 27651
2006-04-13 06:39:24 +00:00
Reid Spencer
599a575d0e Add missing things to the distribution.
llvm-svn: 27650
2006-04-13 06:27:20 +00:00
Reid Spencer
c6ab0175cd Distribute the Stacker samples directory.
llvm-svn: 27648
2006-04-13 06:16:37 +00:00
Evan Cheng
2de048bc69 psad, pmax, pmin intrinsics.
llvm-svn: 27647
2006-04-13 06:11:45 +00:00
Evan Cheng
a27ec55558 pmin, pmax, and psad intrinsics.
llvm-svn: 27646
2006-04-13 06:09:41 +00:00
Evan Cheng
93dcea2b5a Various SSE2 packed integer intrinsics: pmulhuw, pavgw, etc.
llvm-svn: 27645
2006-04-13 05:24:54 +00:00
Evan Cheng
25fcfb9f2d X86 SSE2 supports v8i16 multiplication
llvm-svn: 27644
2006-04-13 05:10:25 +00:00
Evan Cheng
d6cad69ef4 Update
llvm-svn: 27643
2006-04-13 05:09:45 +00:00
Evan Cheng
d5bd292d89 pmul*, pmadd*, and pavg* intrinsics.
llvm-svn: 27642
2006-04-13 05:09:06 +00:00
Chris Lattner
f4571f20bd one too many l's
llvm-svn: 27641
2006-04-13 04:21:31 +00:00
Andrew Lenharth
25d777e319 quick update
llvm-svn: 27640
2006-04-13 02:05:30 +00:00
Evan Cheng
2f634fac6d padds{b|w}, paddus{b|w}, psubs{b|w}, psubus{b|w} intrinsics.
llvm-svn: 27639
2006-04-13 00:43:35 +00:00
Evan Cheng
537bdb370c Naming inconsistency.
llvm-svn: 27638
2006-04-13 00:00:23 +00:00
Evan Cheng
8768f25c80 SSE / SSE2 conversion intrinsics.
llvm-svn: 27637
2006-04-12 23:42:44 +00:00
Reid Spencer
f51d58020e Fix a typo in the name of a file.
llvm-svn: 27636
2006-04-12 23:15:10 +00:00
Tanya Lattner
9cd1518d42 Added the ability to xfail based on llvmgcc version
llvm-svn: 27635
2006-04-12 21:57:40 +00:00
Evan Cheng
22b7b1daef Update my credits. Can I add "Build breaker" to my entry?
llvm-svn: 27634
2006-04-12 21:28:14 +00:00
Evan Cheng
2c2d734efd All "integer" logical ops (pand, por, pxor) are now promoted to v2i64.
Clean up and fix various logical ops issues.

llvm-svn: 27633
2006-04-12 21:21:57 +00:00
Evan Cheng
1477d2d08f Promote vector AND, OR, and XOR
llvm-svn: 27632
2006-04-12 21:20:24 +00:00
Reid Spencer
a1e3495326 Don't dump the llc assembly output to stdout.
llvm-svn: 27631
2006-04-12 21:03:04 +00:00
Reid Spencer
7f718db335 Make sure CVS versions of yacc and lex files get distributed.
llvm-svn: 27630
2006-04-12 20:57:05 +00:00
Reid Spencer
6a45c4a655 Distribute CVS versions of lex files
llvm-svn: 27629
2006-04-12 20:56:12 +00:00
Reid Spencer
0d38d62d93 Distribute the lex/yacc files from the cvs version.
llvm-svn: 27628
2006-04-12 20:55:23 +00:00
Reid Spencer
486a137d9c Additional files to distribute.
llvm-svn: 27627
2006-04-12 20:54:01 +00:00
Reid Spencer
f568bb394c Include the win32 and Xcode directories in the distribution.
llvm-svn: 27626
2006-04-12 20:53:14 +00:00
Reid Spencer
56aa7c79b7 Get rid of a signed/unsigned compare warning.
llvm-svn: 27625
2006-04-12 19:28:15 +00:00
Chris Lattner
e087b8e321 Add a new way to match vector constants, which make it easier to bang bits of
different types.

Codegen spltw(0x7FFFFFFF) and spltw(0x80000000) without a constant pool load,
implementing PowerPC/vec_constants.ll:test1.  This compiles:

typedef float vf __attribute__ ((vector_size (16)));
typedef int vi __attribute__ ((vector_size (16)));
void test(vi *P1, vi *P2, vf *P3) {
  *P1 &= (vi){0x80000000,0x80000000,0x80000000,0x80000000};
  *P2 &= (vi){0x7FFFFFFF,0x7FFFFFFF,0x7FFFFFFF,0x7FFFFFFF};
  *P3 = vec_abs((vector float)*P3);
}

to:

_test:
        mfspr r2, 256
        oris r6, r2, 49152
        mtspr 256, r6
        vspltisw v0, -1
        vslw v0, v0, v0
        lvx v1, 0, r3
        vand v1, v1, v0
        stvx v1, 0, r3
        lvx v1, 0, r4
        vandc v1, v1, v0
        stvx v1, 0, r4
        lvx v1, 0, r5
        vandc v0, v1, v0
        stvx v0, 0, r5
        mtspr 256, r2
        blr

instead of (with two constant pool entries):

_test:
        mfspr r2, 256
        oris r6, r2, 49152
        mtspr 256, r6
        li r6, lo16(LCPI1_0)
        lis r7, ha16(LCPI1_0)
        li r8, lo16(LCPI1_1)
        lis r9, ha16(LCPI1_1)
        lvx v0, r7, r6
        lvx v1, 0, r3
        vand v0, v1, v0
        stvx v0, 0, r3
        lvx v0, r9, r8
        lvx v1, 0, r4
        vand v1, v1, v0
        stvx v1, 0, r4
        lvx v1, 0, r5
        vand v0, v1, v0
        stvx v0, 0, r5
        mtspr 256, r2
        blr

GCC produces (with 2 cp entries):

_test:
        mfspr r0,256
        stw r0,-4(r1)
        oris r0,r0,0xc00c
        mtspr 256,r0
        lis r2,ha16(LC0)
        lis r9,ha16(LC1)
        la r2,lo16(LC0)(r2)
        lvx v0,0,r3
        lvx v1,0,r5
        la r9,lo16(LC1)(r9)
        lwz r12,-4(r1)
        lvx v12,0,r2
        lvx v13,0,r9
        vand v0,v0,v12
        stvx v0,0,r3
        vspltisw v0,-1
        vslw v12,v0,v0
        vandc v1,v1,v12
        stvx v1,0,r5
        lvx v0,0,r4
        vand v0,v0,v13
        stvx v0,0,r4
        mtspr 256,r12
        blr

llvm-svn: 27624
2006-04-12 19:07:14 +00:00
Reid Spencer
2790312ad7 Add the llvm-config directory to the EXTRA_DIST line so it gets distributed
even though its not being built currently. This prevents dist-check from
failing because configure can't find llvm-config.in.in

llvm-svn: 27623
2006-04-12 19:06:14 +00:00
Chris Lattner
d81cef2175 new testcase
llvm-svn: 27622
2006-04-12 19:04:27 +00:00
Reid Spencer
1d86554737 Make sure that the C Frontend's runtime library directory is included as
a -L option to gccld whenever we're building a bytecode module or archive.
This gets around the "Cannot find library 'crtend'" warning messages.

llvm-svn: 27621
2006-04-12 18:21:35 +00:00
Chris Lattner
7900e6da3b Turn casts into getelementptr's when possible. This enables SROA to be more
aggressive in some cases where LLVMGCC 4 is inserting casts for no reason.

This implements InstCombine/cast.ll:test27/28.

llvm-svn: 27620
2006-04-12 18:09:35 +00:00
Tanya Lattner
ace568086f Added llvmgcc version to allow tests to be xfailed by frontend version.
llvm-svn: 27619
2006-04-12 18:08:25 +00:00
Chris Lattner
0dd4945141 These casts should turn into gep instructions
llvm-svn: 27618
2006-04-12 18:07:41 +00:00
Reid Spencer
23eae83205 Don't emit useless warning messages.
llvm-svn: 27617
2006-04-12 17:56:16 +00:00
Chris Lattner
70404dc8b5 Update adding an intrinsic to describe that you can now just plop it into the
target .td file instead of adding SDNodes etc.

llvm-svn: 27616
2006-04-12 17:42:39 +00:00
Andrew Lenharth
d35df8adf9 make recovering running_Olden data easier when the nightly tester eats the graphs
llvm-svn: 27615
2006-04-12 17:41:19 +00:00
Chris Lattner
ce6e988fa6 Rename get_VSPLI_elt -> get_VSPLTI_elt
Canonicalize BUILD_VECTOR's that match VSPLTI's into a single type for each
form, eliminating a bunch of Pat patterns in the .td file and allowing us to
CSE stuff more aggressively.  This implements
PowerPC/buildvec_canonicalize.ll:VSPLTI

llvm-svn: 27614
2006-04-12 17:37:20 +00:00
Chris Lattner
67bcbca856 two equivalent vsplti*s in different types should be CSEd.
llvm-svn: 27613
2006-04-12 17:36:04 +00:00