Upload Tizen:Base source
[external/gdb.git] / sim / testsuite / sim / sh64 / media / ftrvs.cgs
1 # sh testcase for ftrv.s $mtrxg, $fvh, $fvf -*- Asm -*-
2 # mach: all
3 # as: -isa=shmedia
4 # ld: -m shelf64
5
6         .include "media/testutils.inc"
7
8         .macro _load val, fpreg
9         # This macro clobbers r0.
10         movi \val, r0
11         fmov.ls r0, \fpreg 
12         float.ls \fpreg, \fpreg
13         .endm
14
15         start
16
17 init:
18         pta wrong, tr0
19
20         _load 1,  fr0
21         _load 2,  fr4
22         _load 3,  fr8
23         _load 4,  fr12
24         _load 5,  fr1
25         _load 6,  fr5
26         _load 7,  fr9
27         _load 8,  fr13
28         _load 9,  fr2
29         _load 10, fr6
30         _load 11, fr10
31         _load 12, fr14
32         _load 13, fr3
33         _load 14, fr7
34         _load 15, fr11
35         _load 16, fr15
36
37         _load 1, fr16
38         _load 2, fr17
39         _load 3, fr18
40         _load 4, fr19
41
42 ftrvs:
43         ftrv.s mtrx0, fv16, fv20
44
45 check:
46         _load 30, fr0
47         _load 70, fr1
48         _load 110, fr2
49         _load 150, fr3
50
51         fcmpeq.s fr0, fr20, r0
52         bnei r0, 1, tr0
53         
54         fcmpeq.s fr1, fr21, r0
55         bnei r0, 1, tr0
56
57         fcmpeq.s fr2, fr22, r0
58         bnei r0, 1, tr0
59
60         fcmpeq.s fr3, fr23, r0
61         bnei r0, 1, tr0
62         
63 okay:
64         pass
65
66 wrong:
67         fail