bug in PFPO instruction on hercules 4.4
gilsonlasco opened this issue · comments
I'm suspecting there's a bug in PFPO instruction on hercules emulator (Hercules version 4.4.9999.0-SDL-gd99fb053 4.4.9999.0 under Ubuntu 20.04).
When doing a conversion from an extended decimal floating-point number long HFP, using asm
L R0,=X'01010A00' # DPF TO LONG HFP
PFPO
and F4-F6 regs pair with decfloat contents X'39FFD2B32D873E6EA9DAAD5ABE6B6404'
(decimal equivalency is 6.283185307179586476925286766559004 or PI*2)
what I receive in F0 is X'40487ED5110B4611' (decimal equivalency is 0.283185307179586)
when it should be X'416487ED5110B45F'
The integer part of the number (6) is missing...
The other difference is due to rounding issues.
Conversion to short HFP also shows the integer part missing.
Hope it helps.
Regards,
Gilson