initial commit
[riscv-tests.git] / isa / rv64uv / vvmul_d.S
1 #*****************************************************************************
2 # vvmul_d.S
3 #-----------------------------------------------------------------------------
4 #
5 # Test vvmul d.
6 #
7
8 #include "riscv_test.h"
9 #include "test_macros.h"
10
11 RVTEST_RV64U
12 RVTEST_CODE_BEGIN
13
14 li a3,4
15 vvcfgivl a3,a3,32,0
16
17 la a3,src1
18 la a4,src2
19 vld vx2,a3
20 vld vx3,a4
21 lui a0,%hi(vtcode)
22 vf %lo(vtcode)(a0)
23 la a5,dest
24 vsd vx2,a5
25 fence.v.l
26 ld a1,0(a5)
27 li a2,4
28 li x28,2
29 bne a1,a2,fail
30 ld a1,8(a5)
31 li a2,6
32 li x28,3
33 bne a1,a2,fail
34 ld a1,16(a5)
35 li a2,6
36 li x28,4
37 bne a1,a2,fail
38 ld a1,24(a5)
39 li a2,4
40 li x28,5
41 bne a1,a2,fail
42 j pass
43
44 vtcode:
45 mul x2,x2,x3
46 stop
47
48 TEST_PASSFAIL
49
50 RVTEST_CODE_END
51
52 .data
53 RVTEST_DATA_BEGIN
54
55 TEST_DATA
56
57 src1:
58 .dword 1
59 .dword 2
60 .dword 3
61 .dword 4
62 src2:
63 .dword 4
64 .dword 3
65 .dword 2
66 .dword 1
67 dest:
68 .dword 0xdeadbeefcafebabe
69 .dword 0xdeadbeefcafebabe
70 .dword 0xdeadbeefcafebabe
71 .dword 0xdeadbeefcafebabe
72
73 RVTEST_DATA_END