Index: trunk/src/VBox/Runtime/common/math/__fpclassifyd.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__fpclassifyd.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__fpclassifyd.cpp	(revision 96093)
@@ -0,0 +1,56 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __fpclassifyd().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __fpclassifyd
+int RT_NOCRT(__fpclassifyd)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    if (RTFLOAT64U_IS_ZERO(&u))
+        return FP_ZERO;
+    if (RTFLOAT64U_IS_NORMAL(&u))
+        return FP_NORMAL;
+    if (RTFLOAT64U_IS_NAN(&u))
+        return FP_NAN;
+    if (RTFLOAT64U_IS_INF(&u))
+        return FP_INFINITE;
+    Assert(RTFLOAT64U_IS_SUBNORMAL(&u));
+    return FP_SUBNORMAL;
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__fpclassifyd);
+
Index: trunk/src/VBox/Runtime/common/math/__fpclassifyf.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__fpclassifyf.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__fpclassifyf.cpp	(revision 96093)
@@ -0,0 +1,56 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __fpclassifyf().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __fpclassifyf
+int RT_NOCRT(__fpclassifyf)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    if (RTFLOAT32U_IS_ZERO(&u))
+        return FP_ZERO;
+    if (RTFLOAT32U_IS_NORMAL(&u))
+        return FP_NORMAL;
+    if (RTFLOAT32U_IS_NAN(&u))
+        return FP_NAN;
+    if (RTFLOAT32U_IS_INF(&u))
+        return FP_INFINITE;
+    Assert(RTFLOAT32U_IS_SUBNORMAL(&u));
+    return FP_SUBNORMAL;
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__fpclassifyf);
+
Index: trunk/src/VBox/Runtime/common/math/__fpclassifyl.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__fpclassifyl.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__fpclassifyl.cpp	(revision 96093)
@@ -0,0 +1,78 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __fpclassifyl().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __fpclassifyl
+int RT_NOCRT(__fpclassifyl)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    AssertCompile(sizeof(lrd) == sizeof(uint64_t));
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+    if (RTFLOAT80U_IS_ZERO(&u))
+        return FP_ZERO;
+    if (RTFLOAT80U_IS_NORMAL(&u))
+        return FP_NORMAL;
+    if (RTFLOAT80U_IS_NAN(&u))
+        return FP_NAN;
+    if (RTFLOAT80U_IS_INF(&u))
+        return FP_INFINITE;
+    if (RTFLOAT80U_IS_DENORMAL_OR_PSEUDO_DENORMAL(&u))
+        return FP_SUBNORMAL;
+
+    /* Following i387 invalid operand rules here.  Adjust as needed for
+       other architectures. */
+    Assert(RTFLOAT80U_IS_387_INVALID(&u));
+    return FP_NAN;
+
+#else
+    AssertCompile(sizeof(lrd) == sizeof(uint64_t));
+    RTFLOAT64U u;
+    u.rd = lrd;
+    if (RTFLOAT64U_IS_ZERO(&u))
+        return FP_ZERO;
+    if (RTFLOAT64U_IS_NORMAL(&u))
+        return FP_NORMAL;
+    if (RTFLOAT64U_IS_NAN(&u))
+        return FP_NAN;
+    if (RTFLOAT64U_IS_INF(&u))
+        return FP_INFINITE;
+    Assert(RTFLOAT64U_IS_SUBNORMAL(&u));
+    return FP_SUBNORMAL;
+#endif
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__fpclassifyl);
+
Index: trunk/src/VBox/Runtime/common/math/__isfinite.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isfinite.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isfinite.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isfinite().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isfinite
+int RT_NOCRT(__isfinite)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    return RTFLOAT64U_IS_ZERO(&u) || RTFLOAT64U_IS_NORMAL(&u) || RTFLOAT64U_IS_SUBNORMAL(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isfinite);
+
Index: trunk/src/VBox/Runtime/common/math/__isfinitef.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isfinitef.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isfinitef.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isfinitef().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isfinitef
+int RT_NOCRT(__isfinitef)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    return RTFLOAT32U_IS_ZERO(&u) || RTFLOAT32U_IS_NORMAL(&u) || RTFLOAT32U_IS_SUBNORMAL(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isfinitef);
+
Index: trunk/src/VBox/Runtime/common/math/__isfinitel.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isfinitel.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isfinitel.cpp	(revision 96093)
@@ -0,0 +1,53 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isfinitel().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isfinitel
+int RT_NOCRT(__isfinitel)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+    return RTFLOAT80U_IS_ZERO(&u) || RTFLOAT80U_IS_NORMAL(&u) || RTFLOAT80U_IS_SUBNORMAL(&u);
+#else
+    AssertCompile(sizeof(lrd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = lrd;
+    return RTFLOAT64U_IS_ZERO(&u) || RTFLOAT64U_IS_NORMAL(&u) || RTFLOAT64U_IS_SUBNORMAL(&u);
+#endif
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isfinitel);
+
Index: trunk/src/VBox/Runtime/common/math/__isinff.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isinff.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isinff.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isinff().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isinff
+int RT_NOCRT(__isinff)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    return RTFLOAT32U_IS_INF(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isinff);
+
Index: trunk/src/VBox/Runtime/common/math/__isinfl.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isinfl.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isinfl.cpp	(revision 96093)
@@ -0,0 +1,53 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isinfl().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isinfl
+int RT_NOCRT(__isinfl)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+    return RTFLOAT80U_IS_INF(&u);
+#else
+    AssertCompile(sizeof(lrd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = lrd;
+    return RTFLOAT64U_IS_INF(&u);
+#endif
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isinfl);
+
Index: trunk/src/VBox/Runtime/common/math/__isnanl.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isnanl.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isnanl.cpp	(revision 96093)
@@ -0,0 +1,53 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isnanl().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isnanl
+int RT_NOCRT(__isnanl)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+    return RTFLOAT80U_IS_NAN(&u) || RTFLOAT80U_IS_387_INVALID(&u); /* PORTME */
+#else
+    AssertCompile(sizeof(lrd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = lrd;
+    return RTFLOAT64U_IS_NAN(&u);
+#endif
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isnanl);
+
Index: trunk/src/VBox/Runtime/common/math/__isnormal.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isnormal.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isnormal.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isnormal().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isnormal
+int RT_NOCRT(__isnormal)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    return RTFLOAT64U_IS_NORMAL(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isnormal);
+
Index: trunk/src/VBox/Runtime/common/math/__isnormalf.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isnormalf.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isnormalf.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isnormalf().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isnormalf
+int RT_NOCRT(__isnormalf)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    return RTFLOAT32U_IS_NORMAL(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isnormalf);
+
Index: trunk/src/VBox/Runtime/common/math/__isnormall.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__isnormall.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__isnormall.cpp	(revision 96093)
@@ -0,0 +1,53 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __isnormall().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __isnormall
+int RT_NOCRT(__isnormall)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+    return RTFLOAT80U_IS_NORMAL(&u);
+#else
+    AssertCompile(sizeof(lrd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = lrd;
+    return RTFLOAT64U_IS_NORMAL(&u);
+#endif
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__isnormall);
+
Index: trunk/src/VBox/Runtime/common/math/__signbit.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__signbit.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__signbit.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __signbit().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __signbit
+int RT_NOCRT(__signbit)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    return u.s.fSign;
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__signbit);
+
Index: trunk/src/VBox/Runtime/common/math/__signbitf.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__signbitf.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__signbitf.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __signbitf().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __signbitf
+int RT_NOCRT(__signbitf)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    return u.s.fSign;
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__signbitf);
+
Index: trunk/src/VBox/Runtime/common/math/__signbitl.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/__signbitl.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/__signbitl.cpp	(revision 96093)
@@ -0,0 +1,52 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - __signbitl().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef __signbitl
+int RT_NOCRT(__signbitl)(long double lrd)
+{
+#ifdef RT_COMPILER_WITH_80BIT_LONG_DOUBLE
+    RTFLOAT80U2 u;
+    u.lrd = lrd;
+#else
+    AssertCompile(sizeof(lrd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = lrd;
+#endif
+    return u.s.fSign;
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL_WITHOUT_UNDERSCORE(__signbitl);
+
Index: trunk/src/VBox/Runtime/common/math/isinf.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/isinf.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/isinf.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - isinf().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef isinf
+int RT_NOCRT(isinf)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    return RTFLOAT64U_IS_INF(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL(isinf);
+
Index: trunk/src/VBox/Runtime/common/math/isnan.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/isnan.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/isnan.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - isnan().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef isnan
+int RT_NOCRT(isnan)(double rd)
+{
+    AssertCompile(sizeof(rd) == sizeof(RTFLOAT64U));
+    RTFLOAT64U u;
+    u.rd = rd;
+    return RTFLOAT64U_IS_NAN(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL(isnan);
+
Index: trunk/src/VBox/Runtime/common/math/isnanf.cpp
===================================================================
--- trunk/src/VBox/Runtime/common/math/isnanf.cpp	(revision 96093)
+++ trunk/src/VBox/Runtime/common/math/isnanf.cpp	(revision 96093)
@@ -0,0 +1,47 @@
+/* $Id$ */
+/** @file
+ * IPRT - No-CRT - isnanf().
+ */
+
+/*
+ * Copyright (C) 2022 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ *
+ * The contents of this file may alternatively be used under the terms
+ * of the Common Development and Distribution License Version 1.0
+ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
+ * VirtualBox OSE distribution, in which case the provisions of the
+ * CDDL are applicable instead of those of the GPL.
+ *
+ * You may elect to license modified versions of this file under the
+ * terms and conditions of either the GPL or the CDDL or both.
+ */
+
+
+/*********************************************************************************************************************************
+*   Header Files                                                                                                                 *
+*********************************************************************************************************************************/
+#define IPRT_NO_CRT_FOR_3RD_PARTY
+#include "internal/nocrt.h"
+#include <iprt/nocrt/math.h>
+#include <iprt/assertcompile.h>
+#include <iprt/assert.h>
+
+
+#undef isnanf
+int RT_NOCRT(isnanf)(float r32)
+{
+    AssertCompile(sizeof(r32) == sizeof(RTFLOAT32U));
+    RTFLOAT32U u;
+    u.r = r32;
+    return RTFLOAT32U_IS_NAN(&u);
+}
+RT_ALIAS_AND_EXPORT_NOCRT_SYMBOL(isnanf);
+
