blob: 004463a86d306a8bd0f294659c57b428cfc1cc46 [file] [log] [blame]
Kalle Raiskilac9fda992010-08-02 10:25:47 +00001;RUN: llc --march=cellspu %s -o - | FileCheck %s
2%vec = type <2 x float>
3
4define %vec @test_ret(%vec %param)
5{
6;CHECK: bi $lr
7 ret %vec %param
8}
9
10define %vec @test_add(%vec %param)
11{
12;CHECK: fa $3, $3, $3
13 %1 = fadd %vec %param, %param
14;CHECK: bi $lr
15 ret %vec %1
16}
17
18define %vec @test_sub(%vec %param)
19{
20;CHECK: fs $3, $3, $3
21 %1 = fsub %vec %param, %param
22
23;CHECK: bi $lr
24 ret %vec %1
25}
26
27define %vec @test_mul(%vec %param)
28{
29;CHECK: fm $3, $3, $3
30 %1 = fmul %vec %param, %param
31
32;CHECK: bi $lr
33 ret %vec %1
34}
35
Kalle Raiskilae1c91592010-08-02 11:22:10 +000036define %vec @test_splat(float %param ) {
37;CHECK: lqa
38;CHECK: shufb
39 %sv = insertelement <1 x float> undef, float %param, i32 0
40 %rv = shufflevector <1 x float> %sv, <1 x float> undef, <2 x i32> zeroinitializer
41;CHECK: bi $lr
42 ret %vec %rv
43}
44
45