1# See LICENSE for license details.
2
3#*****************************************************************************
4# remw.S
5#-----------------------------------------------------------------------------
6#
7# Test remw instruction.
8#
9
10#include "riscv_test.h"
11#include "test_macros.h"
12
13RVTEST_RV64U
14RVTEST_CODE_BEGIN
15
16  #-------------------------------------------------------------
17  # Arithmetic tests
18  #-------------------------------------------------------------
19
20  TEST_RR_OP( 2, remw,  2,  20,   6 );
21  TEST_RR_OP( 3, remw, -2, -20,   6 );
22  TEST_RR_OP( 4, remw,  2,  20,  -6 );
23  TEST_RR_OP( 5, remw, -2, -20,  -6 );
24
25  TEST_RR_OP( 6, remw,  0, -1<<31,  1 );
26  TEST_RR_OP( 7, remw,  0, -1<<31, -1 );
27
28  TEST_RR_OP( 8, remw, -1<<31, -1<<31, 0 );
29  TEST_RR_OP( 9, remw,      1,      1, 0 );
30  TEST_RR_OP(10, remw,      0,      0, 0 );
31  TEST_RR_OP(11, remw, 0xfffffffffffff897,0xfffffffffffff897, 0 );
32
33  TEST_PASSFAIL
34
35RVTEST_CODE_END
36
37  .data
38RVTEST_DATA_BEGIN
39
40  TEST_DATA
41
42RVTEST_DATA_END
43