venus icon indicating copy to clipboard operation
venus copied to clipboard

FCLASS.S (.D) instruction is not working correctly

Open zeeshanrafique23 opened this issue 3 years ago • 0 comments

FCLASS.S or FCLASS.D instruction looks at a floating point value and determines what sort of a number it is. For example, does the value represents +0.0, -0.0, NaN, +infin, - infin etc.. According to the spec it should return the following values based on a floating point number and store it to a integer register. FCLASS But actually it is giving the following results

For +0.0, it gives value = 0x00000008 
But it should be value = 0x00000010
For -0.0, it gives `IllegalArgumentException: Count 'n' must be non-negative, but was -1. 
But it should be value = 0x00000008
For +infinity, it gives value = 0x00000040 
But it should be value = 0x00000080
For -infinity, it gives `NumberFormatException: Invalid number format: '00000000-8000000' 
But it should be value = 0x00000001

. . and I didn't checked other cases.

zeeshanrafique23 avatar Apr 24 '21 12:04 zeeshanrafique23