News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

fTest() in SmplMath

Started by HSE, July 13, 2017, 02:51:59 AM

Previous topic - Next topic

HSE

Hi qWord!!

I'm using:
.if !fTest(variable, NaN)

and I think the macro left something in FPU registers, because apparently requiere:
.endif
Finit      <--------

The fcmpx macro is still beyond my capacity  :biggrin:

Thanks. HSE
Equations in Assembly: SmplMath

qWord

yes, there is a bug.
Remove the line:
FSBE_PROC %FSBE_LOAD_ARG,%fcmpx_factor,0
from the macro fcmpx (intended for internal use only, BTW).
There also a problem when using fTest with the SEE2-backend, but I've currently no time to track that down.

regards
MREAL macros - when you need floating point arithmetic while assembling!

HSE

Maybe not that line.

There is no hurry. It's working with Finit.

Thanks.

0040E735    DD05 CC4F4300   FLD QWORD PTR DS:[NaN]
0040E73B    DD45 EC         FLD QWORD PTR SS:[EBP-14]
0040E73E    DB05 10314300   FILD DWORD PTR DS:[fcmp_lbl3_2]
0040E744    50              PUSH EAX
0040E745    6A 00           PUSH 0
0040E747    FF35 10314300   PUSH DWORD PTR DS:[fcmp_lbl3_2]
0040E74D    E8 AE280200     CALL AnimalM.fpu_zero_test
0040E752    DDD8            FSTP ST
0040E754    DDD8            FSTP ST
0040E756    85C0            TEST EAX, EAX
0040E758    0F9545 DC       SETNE BYTE PTR SS:[EBP-24]
0040E75C    58              POP EAX
0040E75D    807D DC 00      CMP BYTE PTR SS:[EBP-24], 0
0040E761    75 19           JNZ SHORT AnimalM.0040E77C

Equations in Assembly: SmplMath