Avoid deprecated "b" pseudo-op; use "j" instead
[riscv-tests.git] / isa / rv64sv / illegal_tvec_regid.S
1 #*****************************************************************************
2 # illegal_tvec_regid.S
3 #-----------------------------------------------------------------------------
4 #
5 # Test illegal tvec regid trap.
6 #
7
8 #include "riscv_test.h"
9 #include "test_macros.h"
10
11 RVTEST_RV64S
12 RVTEST_CODE_BEGIN
13
14 li a0, SR_EA
15 csrs status, a0
16
17 csrr a3,status
18 li a4,(1 << IRQ_COP)
19 slli a4,a4,SR_IM_SHIFT
20 or a3,a3,a4 # enable IM[COP]
21 csrw status,a3
22
23 TEST_ILLEGAL_TVEC_REGID(2, 5, 5, vsd, vx7, a2)
24 TEST_ILLEGAL_TVEC_REGID(3, 5, 5, vld, vx7, a2)
25
26 TEST_ILLEGAL_TVEC_REGID(4, 5, 5, vfsd, vf7, a2)
27 TEST_ILLEGAL_TVEC_REGID(5, 5, 5, vfld, vf7, a2)
28
29 TEST_PASSFAIL
30
31 RVTEST_CODE_END
32
33 .data
34 RVTEST_DATA_BEGIN
35
36 TEST_DATA
37
38 src1:
39 .dword 1
40 .dword 2
41 .dword 3
42 .dword 4
43 src2:
44 .dword 4
45 .dword 3
46 .dword 2
47 .dword 1
48 dest:
49 .dword 0xdeadbeefcafebabe
50 .dword 0xdeadbeefcafebabe
51 .dword 0xdeadbeefcafebabe
52 .dword 0xdeadbeefcafebabe
53
54 RVTEST_DATA_END