c2b51578dff61de6cf5581f5300adeca37e90955
[riscv-tests.git] / isa / rv64ui / auipc.S
1 #*****************************************************************************
2 # auipc.S
3 #-----------------------------------------------------------------------------
4 #
5 # Test auipc instruction.
6 #
7
8 #include "riscv_test.h"
9 #include "test_macros.h"
10
11 RVTEST_RV64U
12 RVTEST_CODE_BEGIN
13
14 TEST_CASE(2, a0, 1<<12, \
15 .align 3; \
16 auipc a0, 0x00001; \
17 jal a1, 1f; \
18 1: srl a1, a1, 12; \
19 sll a1, a1, 12; \
20 sub a0, a0, a1; \
21 )
22
23 TEST_CASE(3, a0, -1<<12, \
24 .align 3; \
25 auipc a0, 0xfffff; \
26 jal a1, 1f; \
27 1: srl a1, a1, 12; \
28 sll a1, a1, 12; \
29 sub a0, a0, a1; \
30 )
31
32 TEST_PASSFAIL
33
34 RVTEST_CODE_END
35
36 .data
37 RVTEST_DATA_BEGIN
38
39 TEST_DATA
40
41 RVTEST_DATA_END