[Vm-dev] FFI Testing - Curiouser and curiouser!

ken.dickey at whidbey.com ken.dickey at whidbey.com
Fri Feb 15 16:55:41 UTC 2019


On 2019-02-14 16:39, Andres Valloud wrote:
> Something doesn't look right there.  The test in question appears to
> be adding all integers from 1 to 9 as floating point numbers, and
> seems to be expecting the result is 45 as a floating point number.
> That calculation should need no epsilons, it's lossless in floating
> point land (under the usual assumptions).  What's going on, exactly?
> 

I am clueless.  Different compiler versions.  Different silocon. All 
gcc+Linux.  All "git cloned" from same 
https://github.com/KenDickey/opensmalltalk-vm (cloned from OPenSmalltalk 
w minor changes).

Vanilla (epsilon-less) test:
  - Failed on Raspberry Pi 3 (Broadcom aarch64) and older x86_64.
  - Passed on aarch64 Samsung Chromebook Plus (Rockchip) and LePotato 
(AMLogic).
I have stepped through the call to ffiTestDoubles9 with gdb, which 
returns float(45.) but get lost in the various alloc,copy,shift,mask 
mechanics as things unwind in the interpreter vm.

It is beyond my poor shrinking brain..
-KenD


More information about the Vm-dev mailing list