Acceptance tests: show test report on GitLab CI
[qemu/ar7.git] / tests / tcg / xtensa / test_phys_mem.S
blob9bb3ee3866edcdbe15123a10b6f584d8be15056e
1 #include "macros.inc"
3 test_suite phys_mem
5 #if XCHAL_HAVE_PTP_MMU && !XCHAL_HAVE_SPANNING_WAY
7 .purgem test_init
9 .macro test_init
10     movi    a2, 0xc0000003 /* PPN */
11     movi    a3, 0xc0000004 /* VPN */
12     wdtlb   a2, a3
13     witlb   a2, a3
14     movi    a2, 0xc0000000
15     wsr     a2, ptevaddr
16 .endm
18 test inst_fetch_get_pte_no_phys
19     set_vector kernel, 2f
21     movi    a2, 0x20000000
22     jx      a2
24     movi    a2, 0x20000000
25     rsr     a3, excvaddr
26     assert  eq, a2, a3
27     rsr     a3, epc1
28     assert  eq, a2, a3
29     rsr     a3, exccause
30     movi    a2, 16
31     assert  eq, a2, a3
32 test_end
34 test read_get_pte_no_phys
35     set_vector kernel, 2f
37     movi    a2, 0x20000000
39     l32i    a3, a2, 0
40     test_fail
42     movi    a2, 0x20000000
43     rsr     a3, excvaddr
44     assert  eq, a2, a3
45     movi    a2, 1b
46     rsr     a3, epc1
47     assert  eq, a2, a3
48     rsr     a3, exccause
49     movi    a2, 24
50     assert  eq, a2, a3
51 test_end
53 test write_get_pte_no_phys
54     set_vector kernel, 2f
56     movi    a2, 0x20000000
58     s32i    a3, a2, 0
59     test_fail
61     movi    a2, 0x20000000
62     rsr     a3, excvaddr
63     assert  eq, a2, a3
64     movi    a2, 1b
65     rsr     a3, epc1
66     assert  eq, a2, a3
67     rsr     a3, exccause
68     movi    a2, 24
69     assert  eq, a2, a3
70 test_end
72 #endif
74 test inst_fetch_no_phys
75     set_vector kernel, 2f
77     movi    a2, 0xc0000000
78     jx      a2
80     movi    a2, 0xc0000000
81     rsr     a3, excvaddr
82     assert  eq, a2, a3
83     rsr     a3, epc1
84     assert  eq, a2, a3
85     rsr     a3, exccause
86     movi    a2, 14
87     assert  eq, a2, a3
88 test_end
90 test read_no_phys
91     set_vector kernel, 2f
93     movi    a2, 0xc0000000
95     l32i    a3, a2, 0
96     test_fail
98     movi    a2, 0xc0000000
99     rsr     a3, excvaddr
100     assert  eq, a2, a3
101     movi    a2, 1b
102     rsr     a3, epc1
103     assert  eq, a2, a3
104     rsr     a3, exccause
105     movi    a2, 15
106     assert  eq, a2, a3
107 test_end
109 test write_no_phys
110     set_vector kernel, 2f
112     movi    a2, 0xc0000000
114     s32i    a3, a2, 0
115     test_fail
117     movi    a2, 0xc0000000
118     rsr     a3, excvaddr
119     assert  eq, a2, a3
120     movi    a2, 1b
121     rsr     a3, epc1
122     assert  eq, a2, a3
123     rsr     a3, exccause
124     movi    a2, 15
125     assert  eq, a2, a3
126 test_end
128 test_suite_end