|
From: | Gaurav Sharma |
Subject: | Re: [Qemu-devel] [ARM - FCVT inst] : Difference in calculated value |
Date: | Sun, 17 Aug 2014 00:36:46 +0530 |
While trying to map the softfloat implementation with arm manual, depending upon rounding mode it seems we can get both 0x8000 and 0x8001.However, when trying to match the same with arm implementation, the value for h16 comes out as 0x8001.As per the softfloat algorithm, if the exp is < -10, we return a signed / unsigned zero. In this case 0x8000 is the value set in h16.FPCR = 0x40ae2f54 [with according mask removing the UFE and other unnecessary bit]SIMD register [25] = 0x9EA82A22AB98FBA8L[register values]fcvt h16 s25[Instrn]I am trying to execute a 'fcvt' instruction for conversion from single precision to half precision value.with the following values :
I am still in the process of checking the algorithm for conversion in softfloat, but in the arm manual, i do not see we returning a zero.
Thanks,Gaurav
[Prev in Thread] | Current Thread | [Next in Thread] |