Add LICENSE
[riscv-tests.git] / isa / rv64uv / fcvt.S
1 # See LICENSE for license details.
2
3 #*****************************************************************************
4 # fcvt.S
5 #-----------------------------------------------------------------------------
6 #
7 # Test fcvt instruction in a vf block.
8 #
9
10 #include "riscv_test.h"
11 #include "test_macros.h"
12
13 RVTEST_RV64UV
14 RVTEST_CODE_BEGIN
15
16 vsetcfg 32,32
17 li a3,4
18 vsetvl a3,a3
19
20 la a3,src
21 vld vx2,a3
22 lui a0,%hi(vtcode)
23 vf %lo(vtcode)(a0)
24 la a4,dest
25 vfsd vf0,a4
26 fence
27 la a5,result
28 ld a1,0(a4)
29 ld a2,0(a5)
30 li TESTNUM,2
31 bne a1,a2,fail
32 ld a1,8(a4)
33 ld a2,8(a5)
34 li TESTNUM,3
35 bne a1,a2,fail
36 ld a1,16(a4)
37 ld a2,16(a5)
38 li TESTNUM,4
39 bne a1,a2,fail
40 ld a1,24(a4)
41 ld a2,24(a5)
42 li TESTNUM,5
43 bne a1,a2,fail
44 j pass
45
46 vtcode:
47 fcvt.d.l f0,x2
48 stop
49
50 TEST_PASSFAIL
51
52 RVTEST_CODE_END
53
54 .data
55 RVTEST_DATA_BEGIN
56
57 TEST_DATA
58
59 src:
60 .dword 1
61 .dword 2
62 .dword 3
63 .dword 4
64 dest:
65 .dword 0xdeadbeefcafebabe
66 .dword 0xdeadbeefcafebabe
67 .dword 0xdeadbeefcafebabe
68 .dword 0xdeadbeefcafebabe
69 result:
70 .double 1.0
71 .double 2.0
72 .double 3.0
73 .double 4.0
74
75 RVTEST_DATA_END