********************************************************************** * * * Floating Point Adder/Subtractor Benchmark: Simulation Test Vectors * * (Binary Format) * * * * Developed on Mar 9, 1994 by: * * * * Jesse Pan * * Univ. of Calif., Irvine. * * * ********************************************************************** * * Format: The first list below is a list of ports * The list after that is a list of control types, corresponding to the * appropriate port in the same order as the list of ports (i.e. the * first "in" represents the control type of "operation", etc.) * The list after that is a list of data types, corresponding to the * appropriate port in the same order as the list of port, where ' * signifies a bit, " signifies a bit vector, and a space signifies * an integer or enumerated type * The list for each test case instance consists of values for the * corresponding ports during one clock pulse. Note that the last * three are expected output values that raise an assertion if the * actual output differs * All comments, such as this, are preceded by an asterisk in the first * column * operation:op1_sign:op1_exp:op1_mant:op2_sign:op2_exp:op2_mant:res_sign:res_exp:res_mant: in:in:in:in:in:in:in:out:out:out: :': :":': :":': :": * ************************ * * * NOMINAL TEST VECTORS * * * ************************ * * test nominal cases * -------------------------- * * (-0.25 * -0.5 = +0.125) -- Test Case #1 multiply:1:125:00000000000000000000000:1:126:00000000000000000000000:0:124:00000000000000000000000: * (-0.75 * -2.0 = +1.5) -- Test Case #2 multiply:1:126:10000000000000000000000:1:128:00000000000000000000000:0:127:10000000000000000000000: * (-0.5 * 0.125 = -0.0625) -- Test Case #3 multiply:1:126:00000000000000000000000:0:124:00000000000000000000000:1:123:00000000000000000000000: * (-0.625 * 1.0 = -0.625) -- Test Case #4 multiply:1:126:01000000000000000000000:0:127:00000000000000000000000:1:126:01000000000000000000000: * (-1.5 * -0.5 = +0.75) -- Test Case #5 multiply:1:127:10000000000000000000000:1:126:00000000000000000000000:0:126:10000000000000000000000: * (-2.75 * -2.75 = +7.5625) -- Test Case #6 multiply:1:128:01100000000000000000000:1:128:01100000000000000000000:0:129:11100100000000000000000: * (-3.0 * 0.5 = -1.5) -- Test Case #7 multiply:1:128:10000000000000000000000:0:126:00000000000000000000000:1:127:10000000000000000000000: * (-4.0 * 4.0 = -16) -- Test Case #8 multiply:1:129:00000000000000000000000:0:129:00000000000000000000000:1:131:00000000000000000000000: * (0.5 * -0.25 = -0.125) -- Test Case #9 multiply:0:126:00000000000000000000000:1:125:00000000000000000000000:1:124:00000000000000000000000: * (0.75 * -1.0 = -0.75) -- Test Case #10 multiply:0:126:10000000000000000000000:1:127:00000000000000000000000:1:126:10000000000000000000000: * (0.75 * 0.75 = 0.5625) -- Test Case #11 multiply:0:126:10000000000000000000000:0:126:10000000000000000000000:0:126:00100000000000000000000: * (0.5 * 7.0 = 3.5) -- Test Case #12 multiply:0:126:00000000000000000000000:0:129:11000000000000000000000:0:128:11000000000000000000000: * (5.0 * -0.25 = -1.25) -- Test Case #13 multiply:0:129:01000000000000000000000:1:125:00000000000000000000000:1:127:01000000000000000000000: * (9.0 * -11.0 = -99) -- Test Case #14 multiply:0:130:00100000000000000000000:1:130:01100000000000000000000:1:133:10001100000000000000000: * (13.5 * 0.5 = 6.75) -- Test Case #15 multiply:0:130:10110000000000000000000:0:126:00000000000000000000000:0:129:10110000000000000000000: * (19.0 * 6.0 = 114.0) -- Test Case #16 multiply:0:131:00110000000000000000000:0:129:10000000000000000000000:0:133:11001000000000000000000: * (-0.25 * -0.5 = 0.125) -- Test Case #17 multiply:1:125:00000000000000000000000:1:126:00000000000000000000000:0:124:00000000000000000000000: * (-0.75 * -2.0 = 1.5) -- Test Case #18 multiply:1:126:10000000000000000000000:1:128:00000000000000000000000:0:127:10000000000000000000000: * (-0.5 * 0.125 = -0.625) -- Test Case #19 multiply:1:126:00000000000000000000000:0:124:00000000000000000000000:1:123:00000000000000000000000: * (-0.625 * 1.0 = -0.625) -- Test Case #20 multiply:1:126:01000000000000000000000:0:127:00000000000000000000000:1:126:01000000000000000000000: * (-1.5 * -0.5 = 0.75) -- Test Case #21 multiply:1:127:10000000000000000000000:1:126:00000000000000000000000:0:126:10000000000000000000000: * (-2.75 * -2.75 = 7.5625) -- Test Case #22 multiply:1:128:01100000000000000000000:1:128:01100000000000000000000:0:129:11100100000000000000000: * (-3.0 * 0.5 = -1.5) -- Test Case #23 multiply:1:128:10000000000000000000000:0:126:00000000000000000000000:1:127:10000000000000000000000: * (-4.0 * 4.0 = -16.0) -- Test Case #24 multiply:1:129:00000000000000000000000:0:129:00000000000000000000000:1:131:00000000000000000000000: * (0.5 * -0.25 = -0.125) -- Test Case #25 multiply:0:126:00000000000000000000000:1:125:00000000000000000000000:1:124:00000000000000000000000: * (0.75 * -1.0 = -0.75) -- Test Case #26 multiply:0:126:10000000000000000000000:1:127:00000000000000000000000:1:126:10000000000000000000000: * (0.75 * 0.75 = 0.5625) -- Test Case #27 multiply:0:126:10000000000000000000000:0:126:10000000000000000000000:0:126:00100000000000000000000: * (0.5 * 7.0 = 3.5) -- Test Case #28 multiply:0:126:00000000000000000000000:0:129:11000000000000000000000:0:128:11000000000000000000000: * (5.0 * -0.25 = -1.25) -- Test Case #29 multiply:0:129:01000000000000000000000:1:125:00000000000000000000000:1:127:01000000000000000000000: * (9.0 * -11.0 = -99.0) -- Test Case #30 multiply:0:130:00100000000000000000000:1:130:01100000000000000000000:1:133:10001100000000000000000: * (13.5 * 0.5 = 6.75) -- Test Case #31 multiply:0:130:10110000000000000000000:0:126:00000000000000000000000:0:129:10110000000000000000000: * (19.0 * 6.0 = 114.0) -- Test Case #32 multiply:0:131:00110000000000000000000:0:129:10000000000000000000000:0:133:11001000000000000000000: * * test Idle operation * ------------------- * * No operation -- Test Case #33 * Same result from before idle:-:---:-----------------------:-:---:-----------------------:0:133:11001000000000000000000: * ************************* * * * BOUNDARY TEST VECTORS * * * ************************* * * test POS_ZERO cases * ----------------------- * * (-0.375 * 0 = 0) -- Test Case #34 multiply:1:125:10000000000000000000000:0:0:00000000000000000000000:1:0:00000000000000000000000: * (-2.625 * 0 = 0) -- Test Case #35 multiply:1:128:01010000000000000000000:0:0:00000000000000000000000:1:0:00000000000000000000000: * (0.8125 * 0 = 0) -- Test Case #36 multiply:0:126:10100000000000000000000:0:0:00000000000000000000000:0:0:00000000000000000000000: * (7.5 * 0 = 0) -- Test Case #37 multiply:0:129:11100000000000000000000:0:0:00000000000000000000000:0:0:00000000000000000000000: * (0 * -0.375 = 0) -- Test Case #38 multiply:0:0:00000000000000000000000:1:125:10000000000000000000000:1:0:00000000000000000000000: * (0 * -2.625 = 0) -- Test Case #39 multiply:0:0:00000000000000000000000:1:128:01010000000000000000000:1:0:00000000000000000000000: * (0 * 0.8125 = 0) -- Test Case #40 multiply:0:0:00000000000000000000000:0:126:10100000000000000000000:0:0:00000000000000000000000: * (0 * 7.5 = 0) -- Test Case #41 multiply:0:0:00000000000000000000000:0:129:11100000000000000000000:0:0:00000000000000000000000: * (0 * 0 = 0) -- Test Case #42 multiply:0:0:00000000000000000000000:0:0:00000000000000000000000:0:0:00000000000000000000000: * (0 * MIN_POS = 0) -- Test Case #43 multiply:0:0:00000000000000000000000:0:0:00000000000000000000001:0:0:00000000000000000000000: * (0 * MIN_NEG = 0) -- Test Case #44 multiply:0:0:00000000000000000000000:1:0:00000000000000000000001:1:0:00000000000000000000000: * (0 * MAX_POS = 0) -- Test Case #45 multiply:0:0:00000000000000000000000:0:254:11111111111111111111111:0:0:00000000000000000000000: * (0 * MAX_NEG = 0) -- Test Case #46 multiply:0:0:00000000000000000000000:1:254:11111111111111111111111:1:0:00000000000000000000000: * (0 * POS_INF = 0) -- Test Case #47 multiply:0:0:00000000000000000000000:0:255:00000000000000000000000:0:0:00000000000000000000000: * (0 * NEG_INF = 0) -- Test Case #48 multiply:0:0:00000000000000000000000:1:255:00000000000000000000000:1:0:00000000000000000000000: * (0 * NaN = NaN) -- Test Case #49 multiply:0:0:00000000000000000000000:0:255:11111111111111111111111:0:255:11111111111111111111111: * * test NEG_ZERO cases * --------------------------- * * (-0.375 * -0 = 0) -- Test Case #50 multiply:1:125:10000000000000000000000:1:0:00000000000000000000000:0:00000000000000000000000: * (-2.625 * -0 = 0) -- Test Case #51 multiply:1:128:01010000000000000000000:1:0:00000000000000000000000:0:0:00000000000000000000000: * (0.8125 * -0 = -0) -- Test Case #52 multiply:0:126:10100000000000000000000:1:0:00000000000000000000000:1:0:00000000000000000000000: * (7.5 * -0 = -0) -- Test Case #53 multiply:0:129:11100000000000000000000:1:0:00000000000000000000000:1:0:00000000000000000000000: * (-0 * -0.375 = 0) -- Test Case #54 multiply:1:0:00000000000000000000000:1:125:10000000000000000000000:0:0:00000000000000000000000: * (-0 * -2.625 = 0) -- Test Case #55 multiply:1:0:00000000000000000000000:1:128:01010000000000000000000:0:0:00000000000000000000000: * (-0 * 0.8125 = -0) -- Test Case #56 multiply:1:0:00000000000000000000000:0:126:10100000000000000000000:1:0:00000000000000000000000: * (-0 * 7.5 = -0) -- Test Case #57 multiply:1:0:00000000000000000000000:0:129:11100000000000000000000:1:0:00000000000000000000000: * (-0 * 0 = -0) -- Test Case #58 multiply:1:0:00000000000000000000000:0:0:00000000000000000000000:1:0:00000000000000000000000: * (-0 * MIN_POS = -0) -- Test Case #59 multiply:1:0:00000000000000000000000:0:0:00000000000000000000001:1:0:00000000000000000000000: * (-0 * MIN_NEG = 0) -- Test Case #60 multiply:1:0:00000000000000000000000:1:0:00000000000000000000001:0:0:00000000000000000000000: * (-0 * MAX_POS = -0) -- Test Case #61 multiply:1:0:00000000000000000000000:0:254:11111111111111111111111:1:0:00000000000000000000000: * (-0 * MAX_NEG = 0) -- Test Case #62 multiply:1:0:00000000000000000000000:1:254:11111111111111111111111:0:0:00000000000000000000000: * (-0 * POS_INF = -0) -- Test Case #63 multiply:1:0:00000000000000000000000:0:255:00000000000000000000000:1:0:00000000000000000000000: * (-0 * NEG_INF = 0) -- Test Case #64 multiply:1:0:00000000000000000000000:1:255:00000000000000000000000:0:0:00000000000000000000000: * (-0 * NaN = NaN) -- Test Case #65 multiply:1:0:00000000000000000000000:0:255:11111111111111111111111:0:255:11111111111111111111111: * * test MIN_POS cases * -------------------------- * * (-3 * MIN_POS = - EXP[1]d, MANT[400002]x) -- Test Case #66 multiply:1:128:10000000000000000000000:0:0:00000000000000000000001:1:1:10000000000000000000010: * (-2.625 * MIN_POS = - EXP[1]d, MANT[280001]x) -- Test Case #67 multiply:1:128:01010000000000000000000:0:0:00000000000000000000001:1:1:01010000000000000000001: * (6.5 * MIN_POS = EXP[2]d, MANT[500002]x) -- Test Case #68 multiply:0:129:10100000000000000000000:0:0:00000000000000000000001:0:2:10100000000000000000010: * (7.5 * MIN_POS = EXP[2]d, MANT[700002]x) -- Test Case #69 multiply:0:129:11100000000000000000000:0:0:00000000000000000000001:0:2:11100000000000000000010: * (MIN_POS * -3 = -EXP[1]d, MANT[400002]x) -- Test Case #70 multiply:0:0:00000000000000000000001:1:128:10000000000000000000000:1:1:10000000000000000000010: * (MIN_POS * -2.625 = -EXP[1]d, MANT[280001]x) -- Test Case #71 multiply:0:0:00000000000000000000001:1:128:01010000000000000000000:1:1:01010000000000000000001: * (MIN_POS * 1.625 = EXP[1]d, MANT[500002]x) -- Test Case #72 multiply:0:0:00000000000000000000001:0:127:10100000000000000000000:0:0:10100000000000000000010: * (MIN_POS * 7.5 = EXP[1]d, MANT[700002]x) -- Test Case #73 multiply:0:0:00000000000000000000001:0:129:11100000000000000000000:0:2:11100000000000000000010: * (MIN_POS * 0 = 0 ) -- Test Case #74 multiply:0:0:00000000000000000000001:0:0:00000000000000000000000:0:0:00000000000000000000000: * (MIN_POS * MAX_POS = 2) -- Test Case #75 multiply:0:0:00000000000000000000001:0:254:11111111111111111111111:0:128:00000000000000000000000: * (MIN_POS * MAX_NEG = 2) -- Test Case #76 multiply:0:0:00000000000000000000001:1:254:11111111111111111111111:1:128:00000000000000000000000: * (MIN_POS * POS_INF =POS_INF) -- Test Case #77 multiply:0:0:00000000000000000000001:0:255:00000000000000000000000:0:255:00000000000000000000000: * (MIN_POS * NEG_INF = NEG_INF) -- Test Case #78 multiply:0:0:00000000000000000000001:1:255:00000000000000000000000:1:255:00000000000000000000000: * (MIN_POS * NaN = NaN) -- Test Case #79 multiply:0:0:00000000000000000000001:0:255:10101010101010101010101:0:255:10101010101010101010101: * * test MIN_NEG cases * -------------------------- * * (-3 * MIN_NEG = EXP[1], MANT[400002]x ) -- Test Case #80 multiply:1:128:10000000000000000000000:1:0:00000000000000000000001:0:1:10000000000000000000010: * (-2.625 * MIN_NEG = EXP[1], MANT[280001]x ) -- Test Case #81 multiply:1:128:01010000000000000000000:1:0:00000000000000000000001:0:1:01010000000000000000001: * (6.5 * MIN_NEG = -EXP[1], MANT[500001]x ) -- Test Case #82 multiply:0:129:10100000000000000000000:1:0:00000000000000000000001:1:2:10100000000000000000010: * (7.5 * MIN_NEG = -EXP[1], MANT[700002]x ) -- Test Case #83 multiply:0:129:11100000000000000000000:1:0:00000000000000000000001:1:2:11100000000000000000010: * (MIN_NEG * -3 = EXP[1], MANT[400002]x ) -- Test Case #84 multiply:1:0:00000000000000000000001:1:128:10000000000000000000000:0:1:10000000000000000000010: * (MIN_NEG * -2.625 = EXP[1], MANT[280001]x ) -- Test Case #85 multiply:1:0:00000000000000000000001:1:128:01010000000000000000000:0:1:01010000000000000000001: * (MIN_NEG * 0.8125 = EXP[1], MANT[500002]x ) -- Test Case #86 multiply:1:0:00000000000000000000001:0:129:10100000000000000000000:1:2:10100000000000000000010: * (MIN_NEG * 7.5 = -EXP[1], MANT[700002]x ) -- Test Case #87 multiply:1:0:00000000000000000000001:0:129:11100000000000000000000:1:2:11100000000000000000010: * (MIN_NEG * 0 = - 0) -- Test Case #88 multiply:1:0:00000000000000000000001:0:0:00000000000000000000000:1:0:00000000000000000000000: * (MIN_NEG * MAX_POS = -2) -- Test Case #89 multiply:1:0:00000000000000000000001:0:254:11111111111111111111111:1:128:00000000000000000000000: * (MIN_NEG * MAX_NEG = MAX_NEG) -- Test Case #90 multiply:1:0:00000000000000000000001:1:254:11111111111111111111111:0:128:00000000000000000000000: * (MIN_NEG * POS_INF = NEG_INF) -- Test Case #91 multiply:1:0:00000000000000000000001:0:255:00000000000000000000000:1:255:00000000000000000000000: * (MIN_NEG * NEG_INF = POS_INF) -- Test Case #92 multiply:1:0:00000000000000000000001:1:255:00000000000000000000000:0:255:00000000000000000000000: * (MIN_NEG * NaN = NaN) -- Test Case #93 multiply:1:0:00000000000000000000001:0:255:10000000000000000000000:0:255:10000000000000000000000: * * test MAX_POS cases * -------------------------- * * (-0.375 * MAX_POS = - EXP[253], MANT[3fffff]x ) -- Test Case #94 multiply:1:125:10000000000000000000000:0:254:11111111111111111111111:1:253:01111111111111111111111: * (-0.328125 * MAX_POS = - EXP[253], MANT[27ffff]x ) -- Test Case #95 multiply:1:125:01010000000000000000000:0:254:11111111111111111111111:1:253:01001111111111111111111: * (0.8125 * MAX_POS = EXP[253], MANT[4fffff]x ) -- Test Case #96 multiply:0:126:10100000000000000000000:0:254:11111111111111111111111:0:254:10011111111111111111111: * (0.9375 * MAX_POS = EXP[254], MANT[6fffff]x ) -- Test Case #97 multiply:0:126:11100000000000000000000:0:254:11111111111111111111111:0:254:11011111111111111111111: * (MAX_POS * -0.375 = EXP[253], MANT[3fffff]x ) -- Test Case #98 multiply:0:254:11111111111111111111111:1:125:10000000000000000000000:1:253:01111111111111111111111: * (MAX_POS * -0.1640625 = EXP[252], MANT[27ffff]x ) -- Test Case #99 multiply:0:254:11111111111111111111111:1:124:01010000000000000000000:1:252:01001111111111111111111: * (MAX_POS * 0.8125 = EXP[254], MANT[4fffff]x ) -- Test Case #100 multiply:0:254:11111111111111111111111:0:126:10100000000000000000000:0:254:10011111111111111111111: * (MAX_POS * 0.11718755 = EXP[251], MANT[6fffff]x ) -- Test Case #101 multiply:0:254:11111111111111111111111:0:123:11100000000000000000000:0:251:11011111111111111111111: * (MAX_POS * 0 = 0) -- Test Case #102 multiply:0:254:11111111111111111111111:0:0:00000000000000000000000:0:0:00000000000000000000000: * (MAX_POS * MIN_POS = 2 ) -- Test Case #103 multiply:0:254:11111111111111111111111:0:0:00000000000000000000001:0:128:00000000000000000000000: * (MAX_POS * MIN_NEG = -2 ) -- Test Case #104 multiply:0:254:11111111111111111111111:1:0:00000000000000000000001:1:128:00000000000000000000000: * (MAX_POS * POS_INF = POS_INF) -- Test Case #105 multiply:0:254:11111111111111111111111:0:255:00000000000000000000000:0:255:00000000000000000000000: * (MAX_POS * NEG_INF = NEG_INF) -- Test Case #106 multiply:0:254:11111111111111111111111:1:255:00000000000000000000000:1:255:00000000000000000000000: * (MAX_POS * NaN = NaN) -- Test Case #107 multiply:0:254:11111111111111111111111:0:255:10000000000000000000000:0:255:10000000000000000000000: * * test MAX_NEG cases * ------------------ * * (-0.375 * MAX_NEG = EXP[252], MANT[3fffff]x ) -- Test Case #108 multiply:1:125:10000000000000000000000:1:254:11111111111111111111111:0:253:01111111111111111111111: * (-0.65625 * MAX_NEG = EXP[254], MANT[27ffff]x ) -- Test Case #109 multiply:1:126:01010000000000000000000:1:254:11111111111111111111111:0:254:01001111111111111111111: * (0.8125 * MAX_NEG = - EXP[254], MANT[4fffff]x ) -- Test Case #110 multiply:0:126:10100000000000000000000:1:254:11111111111111111111111:1:254:10011111111111111111111: * (0.0585938 * MAX_NEG = - EXP[250], MANT[6fffff]x ) -- Test Case #111 multiply:0:122:11100000000000000000000:1:254:11111111111111111111111:1:250:11011111111111111111111: * (MAX_NEG * -0.375 = EXP[253], MANT[3fffff]x ) -- Test Case #112 multiply:1:254:11111111111111111111111:1:125:10000000000000000000000:0:253:01111111111111111111111: * (MAX_NEG * -0.0205078 = EXP[249], MANT[27ffff]x ) -- Test Case #113 multiply:1:254:11111111111111111111111:1:121:01010000000000000000000:0:249:01001111111111111111111: * (MAX_NEG * 0.8125 = - EXP[254], MANT[4fffff]x ) -- Test Case #114 multiply:1:254:11111111111111111111111:0:126:10100000000000000000000:1:254:10011111111111111111111: * (MAX_NEG * 0.234375 = - EXP[252], MANT[6fffff]x ) -- Test Case #115 multiply:1:254:11111111111111111111111:0:124:11100000000000000000000:1:252:11011111111111111111111: * (MAX_NEG * 0 = - 0) -- Test Case #116 multiply:1:254:11111111111111111111111:0:0:00000000000000000000000:1:0:00000000000000000000000: * (MAX_NEG * MIN_POS = - 2 ) -- Test Case #117 multiply:1:254:11111111111111111111111:0:0:00000000000000000000001:1:128:00000000000000000000000: * (MAX_NEG * MIN_NEG = 2 ) -- Test Case #118 multiply:1:254:11111111111111111111111:1:0:00000000000000000000001:0:128:00000000000000000000000: * (MAX_NEG * POS_INF = NEG_INF) -- Test Case #119 multiply:1:254:11111111111111111111111:0:255:00000000000000000000000:1:255:00000000000000000000000: * (MAX_NEG * NEG_INF = POS_INF) -- Test Case #120 multiply:1:254:11111111111111111111111:1:255:00000000000000000000000:0:255:00000000000000000000000: * (MAX_NEG * NaN = NaN) -- Test Case #121 multiply:1:254:11111111111111111111111:0:255:10000000000000000000000:0:255:10000000000000000000000: * * test POS_INF cases * -------------------------- * * (-0.375 * POS_INF = NEG_INF) -- Test Case #122 multiply:1:125:10000000000000000000000:0:255:00000000000000000000000:1:255:00000000000000000000000: * (-2.625 * POS_INF = NEG_INF) -- Test Case #123 multiply:1:128:01010000000000000000000:0:255:00000000000000000000000:1:255:00000000000000000000000: * (0.8125 * POS_INF = POS_INF) -- Test Case #124 multiply:0:126:10100000000000000000000:0:255:00000000000000000000000:0:255:00000000000000000000000: * (7.5 * POS_INF = POS_INF) -- Test Case #125 multiply:0:129:11100000000000000000000:0:255:00000000000000000000000:0:255:00000000000000000000000: * (POS_INF * -0.375 = NEG_INF) -- Test Case #126 multiply:0:255:00000000000000000000000:1:125:10000000000000000000000:1:255:00000000000000000000000: * (POS_INF * -2.625 = NEG_INF) -- Test Case #127 multiply:0:255:00000000000000000000000:1:128:01010000000000000000000:1:255:00000000000000000000000: * (POS_INF * 0.8125 = POS_INF) -- Test Case #128 multiply:0:255:00000000000000000000000:0:126:10100000000000000000000:0:255:00000000000000000000000: * (POS_INF * 7.5 = POS_INF) -- Test Case #129 multiply:0:255:00000000000000000000000:0:129:11100000000000000000000:0:255:00000000000000000000000: * (POS_INF * 0 = 0) -- Test Case #130 multiply:0:255:00000000000000000000000:0:0:00000000000000000000000:0:0:00000000000000000000000: * (POS_INF * MIN_POS = POS_INF) -- Test Case #131 multiply:0:255:00000000000000000000000:0:0:00000000000000000000001:0:255:00000000000000000000000: * (POS_INF * MIN_NEG = NEG_INF) -- Test Case #132 multiply:0:255:00000000000000000000000:1:0:00000000000000000000001:1:255:00000000000000000000000: * (POS_INF * MAX_POS = POS_INF) -- Test Case #133 multiply:0:255:00000000000000000000000:0:254:11111111111111111111111:0:255:00000000000000000000000: * (POS_INF * MAX_NEG = NEG_INF) -- Test Case #134 multiply:0:255:00000000000000000000000:1:254:11111111111111111111111:1:255:00000000000000000000000: * (POS_INF * POS_INF = POS_INF) -- Test Case #135 multiply:0:255:00000000000000000000000:0:255:00000000000000000000000:0:255:00000000000000000000000; * (POS_INF * NEG_INF = NEG_INF) -- Test Case #136 multiply:0:255:00000000000000000000000:1:255:00000000000000000000000:1:255:00000000000000000000000; * (POS_INF * NaN = NaN) -- Test Case #137 multiply:0:255:00000000000000000000000:0:255:11111111111111111111111:0:255:11111111111111111111111; * * test NEG_INF cases * -------------------------- * * (-0.375 * NEG_INF = POS_INF) -- Test Case #138 multiply:1:125:10000000000000000000000:1:255:00000000000000000000000:0:255:00000000000000000000000: * (-2.625 * NEG_INF = POS_INF) -- Test Case #139 multiply:1:128:01010000000000000000000:1:255:00000000000000000000000:0:255:00000000000000000000000: * (0.8125 * NEG_INF = NEG_INF) -- Test Case #140 multiply:0:126:10100000000000000000000:1:255:00000000000000000000000:1:255:00000000000000000000000: * (7.5 * NEG_INF = NEG_INF) -- Test Case #141 multiply:0:129:11100000000000000000000:1:255:00000000000000000000000:1:255:00000000000000000000000: * (NEG_INF * -0.375 = POS_INF) -- Test Case #142 multiply:1:255:00000000000000000000000:1:125:10000000000000000000000:0:255:00000000000000000000000: * (NEG_INF * -2.625 = POS_INF) -- Test Case #143 multiply:1:255:00000000000000000000000:1:128:01010000000000000000000:0:255:00000000000000000000000: * (NEG_INF * 0.8125 = NEG_INF) -- Test Case #144 multiply:1:255:00000000000000000000000:0:126:10100000000000000000000:1:255:00000000000000000000000: * (NEG_INF * 7.5 = NEG_INF) -- Test Case #145 multiply:1:255:00000000000000000000000:0:129:11100000000000000000000:1:255:00000000000000000000000: * (NEG_INF * 0 = - 0) -- Test Case #146 multiply:1:255:00000000000000000000000:0:0:00000000000000000000000:1:0:00000000000000000000000: * (NEG_INF * MIN_POS = NEG_INF) -- Test Case #147 multiply:1:255:00000000000000000000000:0:0:00000000000000000000001:1:255:00000000000000000000000: * (NEG_INF * MIN_NEG = POS_INF) -- Test Case #148 multiply:1:255:00000000000000000000000:1:0:00000000000000000000001:0:255:00000000000000000000000: * (NEG_INF * MAX_POS = NEG_INF) -- Test Case #149 multiply:1:255:00000000000000000000000:0:254:11111111111111111111111:1:255:00000000000000000000000: * (NEG_INF * MAX_NEG = POS_INF) -- Test Case #150 multiply:1:255:00000000000000000000000:1:254:11111111111111111111111:0:255:00000000000000000000000: * (NEG_INF * POS_INF = NEG_INF) -- Test Case #151 multiply:1:255:00000000000000000000000:0:255:00000000000000000000000:1:255:00000000000000000000000: * (NEG_INF * NEG_INF = POS_INF) -- Test Case #152 multiply:1:255:00000000000000000000000:1:255:00000000000000000000000:0:255:00000000000000000000000: * (NEG_INF * NaN = NaN) -- Test Case #153 multiply:1:255:00000000000000000000000:0:255:11111111111111111111100:0:255:11111111111111111111100; * * test NaN cases * -------------------------- * * (-0.375 * NaN = NaN) -- Test Case #154 multiply:1:125:10000000000000000000000:0:255:01111111111111111111111:0:255:01111111111111111111111: * (-2.625 * NaN = NaN) -- Test Case #155 multiply:1:128:01010000000000000000000:0:255:01010101010101010101010:0:255:01010101010101010101010: * (0.8125 * NaN = NaN) -- Test Case #156 multiply:0:126:10100000000000000000000:0:255:01111111111111111111111:0:255:01111111111111111111111: * (7.5 * NaN = NaN) -- Test Case #157 multiply:0:129:11100000000000000000000:0:255:01010101010101010101010:0:255:01010101010101010101010: * (NaN * -0.375 = NaN) -- Test Case #158 multiply:0:255:01111111111111111111111:1:125:10000000000000000000000:0:255:01111111111111111111111: * (NaN * -2.625 = NaN) -- Test Case #159 multiply:0:255:01010101010101010101010:1:128:01010000000000000000000:0:255:01010101010101010101010: * (NaN * 0.8125 = NaN) -- Test Case #160 multiply:0:255:01111111111111111111111:0:126:10100000000000000000000:0:255:01111111111111111111111: * (NaN * 7.5 = NaN) -- Test Case #161 multiply:0:255:01010101010101010101010:0:129:11100000000000000000000:0:255:01010101010101010101010: * (NaN * 0 = NaN) -- Test Case #162 multiply:0:255:01111111111111111111111:0:0:00000000000000000000000:0:255:01111111111111111111111: * (NaN * MIN_POS = NaN) -- Test Case #163 multiply:0:255:01010101010101010101010:0:0:00000000000000000000001:0:255:01010101010101010101010: * (NaN * MIN_NEG = NaN) -- Test Case #164 multiply:0:255:01111111111111111111111:1:0:00000000000000000000001:0:255:01111111111111111111111: * (NaN * MAX_POS = NaN) -- Test Case #165 multiply:0:255:01010101010101010101010:0:254:11111111111111111111111:0:255:01010101010101010101010: * (NaN * MAX_NEG = NaN) -- Test Case #166 multiply:0:255:01111111111111111111111:1:254:11111111111111111111111:0:255:01111111111111111111111: * (NaN * POS_INF = NaN) -- Test Case #167 multiply:0:255:01010101010101010101010:0:255:00000000000000000000000:0:255:01010101010101010101010: * (NaN * NaN = NaN) -- Test Case #168 multiply:0:255:01111111111111111111111:0:255:01010101010101010101010:0:255:01111111111111111111111; * (NaN * NaN = NaN) -- Test Case #169 multiply:0:255:01010101010101010101010:0:255:11111111111111111111100:0:255:01010101010101010101010;