audk/ArmPkg/Library/ArmSoftFloatLib
Ard Biesheuvel 371e7001e8 ArmPkg/ArmSoftFloatLib GCC4x: fix build failure
The upstream SoftFloat code that was recently incorporated into
ArmSoftFloatLib uses some parameterization to tweak the inlining
and optimization behavior for different compilers.

The custom platform.h file that sets these parameters is based on
the upstream version for Linux/ARM, but was updated to include the
'always_inline' GCC attribute into the INLINE macro, to ensure that
all definitions that are marked as inline are not only inlined into
their callers, but also to ensure that no version of the function is
ever emitted into the object file.

This works fine on recent GCC and Clang, but the latter part turns
out to break on GCC 4.x, resulting duplicate definition linker errors.
Fortunately, the synticatically more appriopriate 'static inline'
works fine on both the recent and the older compilers, so let's switch
to that instead.

Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2019-06-01 09:57:32 +02:00
..
berkeley-softfloat-3@b64af41c32 ArmPkg: import Berkeley Softfloat library as git submodule 2019-05-31 17:53:44 +02:00
ArmSoftFloatLib.c ArmPkg/ArmSoftFloatLib: switch to new version of softfloat library 2019-05-31 17:54:09 +02:00
ArmSoftFloatLib.inf ArmPkg/ArmSoftFloatLib: switch to new version of softfloat library 2019-05-31 17:54:09 +02:00
platform.h ArmPkg/ArmSoftFloatLib GCC4x: fix build failure 2019-06-01 09:57:32 +02:00