+1 vote
by Bart Nelson (420 points)
We have been happily using

VFX Forth 64 5.20 RC2 [build 0114] 2021-05-27 for Linux x64

for quite a while now.

We thought we ought to update to the latest version.

VFX Forth 64 5.20 [build 0131] 2022-09-12 for Linux x64

Now our application does not start. The problem appears to be with the floating point system, but after two man-days struggle, we still can't exactly pinpoint it.

N.B. On build 114, FpSystem . returns 4.

On build 131, it returns 2. But attempts to use SSE64setup do not fix the problem.

We can't see anything in the release notes to indicate what might have gone wrong.

1 Answer

0 votes
by Stephen Pelc (3.4k points)
In the short term go back to build 114. The FP system has changed in the latest release, but bugs will have to wait until I have brought the Windows version up to the same level, and have written an assembler for a client.

The new FP arrangement allows you to select the the FP pack at build time, and automagically converts that format to SSE in the EXTERN: mechanism. It appears to work fine on Macos, but that's the only system it has been seriously tested on. The advantage of the new arrangement is that you can stick with optimised 80 bit NDP floats and conversion to SSE is automatic in EXTERNs. Now we can do a proper callback interface.
by Bruno Degazio (250 points)
I seem to be experiencing a related problem in the MacOS version. Externs: compiled with COCOA: do not
by Bruno Degazio (250 points)
I seem to be experiencing a related problem in the MacOS version of VFX 5.20 build 401.

Externs: compiled with COCOA:  which require  a floating point input  do not work. (All worked fine in VFX 5.20 build 3.78)  

COCOA: words that require only Integer inputs work fine.  

My guess is that the Cocoa bridge code somehow does not accommodate the new floating point parameter passing, but on inspecting that code I can't see where the problem might be.