fmin.S revision 12771
112027Sjungma@eit.uni-kl.de# See LICENSE for license details. 212027Sjungma@eit.uni-kl.de 312027Sjungma@eit.uni-kl.de#***************************************************************************** 412027Sjungma@eit.uni-kl.de# fmin.S 512027Sjungma@eit.uni-kl.de#----------------------------------------------------------------------------- 612027Sjungma@eit.uni-kl.de# 712027Sjungma@eit.uni-kl.de# Test f{min|max}.d instructinos. 812027Sjungma@eit.uni-kl.de# 912027Sjungma@eit.uni-kl.de 1012027Sjungma@eit.uni-kl.de#include "riscv_test.h" 1112027Sjungma@eit.uni-kl.de#include "test_macros.h" 1212027Sjungma@eit.uni-kl.de 1312027Sjungma@eit.uni-kl.deRVTEST_RV64UF 1412027Sjungma@eit.uni-kl.deRVTEST_CODE_BEGIN 1512027Sjungma@eit.uni-kl.de 1612027Sjungma@eit.uni-kl.de#if __riscv_xlen == 32 1712027Sjungma@eit.uni-kl.de # Replace the function with the 32-bit variant defined in test_macros.h 1812027Sjungma@eit.uni-kl.de #undef TEST_FP_OP2_D 1912027Sjungma@eit.uni-kl.de #define TEST_FP_OP2_D TEST_FP_OP2_D32 2012027Sjungma@eit.uni-kl.de#endif 2112027Sjungma@eit.uni-kl.de 2212027Sjungma@eit.uni-kl.de #------------------------------------------------------------- 2312027Sjungma@eit.uni-kl.de # Arithmetic tests 2412027Sjungma@eit.uni-kl.de #------------------------------------------------------------- 2512027Sjungma@eit.uni-kl.de 2612027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 2, fmin.d, 0, 1.0, 2.5, 1.0 ); 2712027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 3, fmin.d, 0, -1235.1, -1235.1, 1.1 ); 2812027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 4, fmin.d, 0, -1235.1, 1.1, -1235.1 ); 2912027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 5, fmin.d, 0, -1235.1, NaN, -1235.1 ); 3012027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 6, fmin.d, 0, 0.00000001, 3.14159265, 0.00000001 ); 3112027Sjungma@eit.uni-kl.de TEST_FP_OP2_D( 7, fmin.d, 0, -2.0, -1.0, -2.0 ); 3212027Sjungma@eit.uni-kl.de 3312027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(12, fmax.d, 0, 2.5, 2.5, 1.0 ); 3412027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(13, fmax.d, 0, 1.1, -1235.1, 1.1 ); 3512027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(14, fmax.d, 0, 1.1, 1.1, -1235.1 ); 3612027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(15, fmax.d, 0, -1235.1, NaN, -1235.1 ); 3712027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(16, fmax.d, 0, 3.14159265, 3.14159265, 0.00000001 ); 3812027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(17, fmax.d, 0, -1.0, -1.0, -2.0 ); 3912027Sjungma@eit.uni-kl.de 4012027Sjungma@eit.uni-kl.de # FMIN(sNaN, x) = x 4112027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(20, fmax.d, 0x10, 1.0, sNaN, 1.0); 4212027Sjungma@eit.uni-kl.de # FMIN(qNaN, qNaN) = canonical NaN 4312027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(21, fmax.d, 0x00, qNaN, NaN, NaN); 4412027Sjungma@eit.uni-kl.de 4512027Sjungma@eit.uni-kl.de # -0.0 < +0.0 4612027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(30, fmin.d, 0, -0.0, -0.0, 0.0 ); 4712027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(31, fmin.d, 0, -0.0, 0.0, -0.0 ); 4812027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(32, fmax.d, 0, 0.0, -0.0, 0.0 ); 4912027Sjungma@eit.uni-kl.de TEST_FP_OP2_D(33, fmax.d, 0, 0.0, 0.0, -0.0 ); 5012027Sjungma@eit.uni-kl.de 5112027Sjungma@eit.uni-kl.de TEST_PASSFAIL 5212027Sjungma@eit.uni-kl.de 5312027Sjungma@eit.uni-kl.deRVTEST_CODE_END 5412027Sjungma@eit.uni-kl.de 5512027Sjungma@eit.uni-kl.de .data 5612027Sjungma@eit.uni-kl.deRVTEST_DATA_BEGIN 5712027Sjungma@eit.uni-kl.de 5812027Sjungma@eit.uni-kl.de TEST_DATA 5912027Sjungma@eit.uni-kl.de 6012027Sjungma@eit.uni-kl.deRVTEST_DATA_END 6112027Sjungma@eit.uni-kl.de