VirtualBox

Changeset 94545 in vbox for trunk


Ignore:
Timestamp:
Apr 11, 2022 12:15:06 AM (3 years ago)
Author:
vboxsync
Message:

libs/softfloat-3e: Build ring-0 version the library, for now pretending we can get away with all global status variables. bugref:9898

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Config.kmk

    r94542 r94545  
    48084808
    48094809SDK_VBOX_SOFTFLOAT             := SoftFloat 3 for dll linking.
    4810  SDK_VBOX_SOFTFLOAT_DEFS       := SOFTFLOAT_FAST_INT64
    4811  SDK_VBOX_SOFTFLOAT_DEFS.amd64 := LITTLEENDIAN
    4812  SDK_VBOX_SOFTFLOAT_DEFS.arm64 := LITTLEENDIAN
    4813  SDK_VBOX_SOFTFLOAT_DEFS.x86   := LITTLEENDIAN
     4810SDK_VBOX_SOFTFLOAT_DEFS        := SOFTFLOAT_FAST_INT64
     4811SDK_VBOX_SOFTFLOAT_DEFS.amd64 := LITTLEENDIAN
     4812SDK_VBOX_SOFTFLOAT_DEFS.arm64 := LITTLEENDIAN
     4813SDK_VBOX_SOFTFLOAT_DEFS.x86    := LITTLEENDIAN
    48144814if1of ($(KBUILD_TARGET),win)
    48154815 SDK_VBOX_SOFTFLOAT_DEFS       += THREAD_LOCAL=__declspec(thread)
     
    48214821SDK_VBOX_SOFTFLOAT_LIBS         = \
    48224822        $(PATH_STAGE_LIB)/VBox-SoftFloat$(VBOX_SUFF_LIB)
     4823
     4824SDK_VBOX_SOFTFLOATR0           := SoftFloat 3 for ring-0 linking.
     4825SDK_VBOX_SOFTFLOATR0_DEFS      := SOFTFLOAT_FAST_INT64
     4826SDK_VBOX_SOFTFLOATR0_DEFS.amd64:= LITTLEENDIAN
     4827SDK_VBOX_SOFTFLOATR0_DEFS.arm64:= LITTLEENDIAN
     4828SDK_VBOX_SOFTFLOATR0_DEFS.x86  := LITTLEENDIAN
     4829SDK_VBOX_SOFTFLOATR0_INCS       = \
     4830        $(PATH_ROOT)/src/libs/softfloat-3e/source/include
     4831SDK_VBOX_SOFTFLOATR0_LIBS       = \
     4832        $(PATH_STAGE_LIB)/VBox-SoftFloatR0$(VBOX_SUFF_LIB)
    48234833
    48244834ifdef VBOX_WITH_LIBSSH
  • trunk/src/VBox/VMM/Makefile.kmk

    r94539 r94545  
    469469 endif
    470470
    471  VMMR0_SDKS      = VBOX_SOFTFLOAT
     471 VMMR0_SDKS      = VBOX_SOFTFLOATR0
    472472
    473473 VMMR0_INCS      = \
  • trunk/src/VBox/VMM/VMMAll/IEMAllAImplC.cpp

    r94543 r94545  
    2727#include <iprt/uint256.h>
    2828
    29 #ifndef IN_RING0
    3029RT_C_DECLS_BEGIN
    31 # include <softfloat.h>
     30#include <softfloat.h>
    3231RT_C_DECLS_END
    33 #endif
    3432
    3533
     
    46604658        switch (fFcw & X86_FCW_RC_MASK)
    46614659        {
     4660            default: /* (for the simple-minded MSC which otherwise things fAdd would be used uninitialized) */
    46624661            case X86_FCW_RC_NEAREST:
    46634662                if (puMantissa->QWords.qw1 & RT_BIT_64(63))
  • trunk/src/libs/softfloat-3e/Makefile.kmk

    r94535 r94545  
    354354        source/f128M_lt_quiet.c
    355355
     356#
     357# Ring-0 version of the above (has different compiler settings).
     358#
     359if defined(VBOX_WITH_R0_MODULES) && !defined(VBOX_ONLY_EXTPACKS)
     360 LIBRARIES += VBox-SoftFloatR0
     361endif
     362VBox-SoftFloatR0_EXTENDS   := VBox-SoftFloat
     363VBox-SoftFloatR0_TEMPLATE  := VBoxR0
     364VBox-SoftFloatR0_DEFS       = $(NO_SUCH_VARIABLE)
     365
     366# -wd4245: f128_sqrt.c(184): warning C4245: '=': conversion from 'int' to 'uint_fast64_t', signed/unsigned mismatch
     367# -wd4389: f64_to_i64_r_minMag.c(93): warning C4389: '!=': signed/unsigned mismatch
     368VBox-SoftFloatR0_CFLAGS.win := $(VBox-SoftFloat_CFLAGS.win) -wd4245 -wd4389
     369
    356370include $(FILE_KBUILD_SUB_FOOTER)
    357371
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette