Done with rv32ui asm test ports
[riscv-tests.git] / isa / rv32ui / amomax_w.S
1 #*****************************************************************************
2 # amomax_d.S
3 #-----------------------------------------------------------------------------
4 #
5 # Test amomax.w instruction.
6 #
7
8 #include "riscv_test.h"
9 #include "test_macros.h"
10
11 RVTEST_RV32U
12 RVTEST_CODE_BEGIN
13
14 TEST_CASE(2, a4, 0x80000000, \
15 li a0, 0x80000000; \
16 li a1, 0xfffff800; \
17 la a3, amo_operand; \
18 sw a0, 0(a3); \
19 amomax.w a4, a1, 0(a3); \
20 )
21
22 TEST_CASE(3, a5, 0xfffff800, lw a5, 0(a3))
23
24 TEST_CASE(4, a4, 0, \
25 li a1, 1; \
26 sw x0, 0(a3); \
27 amomax.w a4, a1, 0(a3); \
28 )
29
30 TEST_CASE(5, a5, 1, lw a5, 0(a3))
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
42
43 .bss
44 .align 3
45 amo_operand:
46 .dword 0
47 .skip 65536