[omniORB] Issue transfering double over the network on x86_64/arvm8
Thomas Braun
thomas.braun at byte-physics.de
Sun Feb 5 13:13:59 UTC 2023
Am Samstag, dem 04.02.2023 um 13:04 +0000 schrieb Duncan Grisby:
> I confirmed that the Apple compiler does not set __VFP_FP__, nor does
> it appear to set any defines that correspond to it.
>
> I don't believe there are any 64-bit ARM CPUs that use the ARM FPA
> float format, so I have changed code in CORBA_sysdep.h to be this:
>
>
> --- omniORB/include/omniORB4/CORBA_sysdep.h (revision 6632)
> +++ omniORB/include/omniORB4/CORBA_sysdep.h (working copy)
> @@ -89,7 +89,7 @@
> // __VFP_FP__ means that the floating point format in use is that
> oft he ARM
> // VFP unit, which is native-endian IEEE-754.
> #if defined(__arm__)
> -# if defined(__armv5teb__) || defined(__VFP_FP__)
> +# if defined(__armv5teb__) || defined(__VFP_FP__) ||
> defined(__aarch64__)
> # define NO_OMNI_MIXED_ENDIAN_DOUBLE
> # else
> # define OMNI_MIXED_ENDIAN_DOUBLE
>
>
> That is checked in to both the 4_2 and 4_3 branches.
Thanks Duncan for the quick fix. I've confirmed that it works.
Question: Is there a good workaround for people not able to recompile
omniORB?
>From looking at the code above I would say adding
#ifndef __VFP_FP
#define __VFP_FP
#endif // __VFP_FP
before including omniORB header files should do the trick or?
More information about the omniORB-list
mailing list