From 2230f515907ed1bb29156766bc3fea2984fc67ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20=C5=81o=C5=9B?= Date: Thu, 30 Jan 2025 14:26:28 +0100 Subject: [PATCH] Fix compilation for VxWorks ARM64 VxWorks libc for Intel don't have implemented __extendhfxf2 function, which can be emitted by compiler when converting float16 to 80-bit long double. When checking Qt6 support for ARM64 it was found that the same issue applies to ARM64, which causes similar compilation error (Undefined reference to __extendhfxf2). Fix this by adding exclusion to ARM64 when testing long double in tst_qfloat16::ordering() test function. Change-Id: Ia229677e551cb6d72762c16973dae23b270da7f7 Reviewed-by: Thiago Macieira --- tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp b/tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp index 1eb74181b56..47cf22e2dfc 100644 --- a/tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp +++ b/tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp @@ -193,11 +193,11 @@ void tst_qfloat16::ordering() CHECK_FP(qfloat16); CHECK_FP(float); CHECK_FP(double); - // Qt built for VxWorks x86_64 fails to link due to undefined reference to + // Qt built for VxWorks x86_64 and arm64 fails to link due to undefined reference to // __extendhfxf2 when below check is enabled. // This has been acknowledged by WindRiver as a bug // and is being tracked in ticket 00154117 -#if !(defined(Q_OS_VXWORKS) && defined(Q_PROCESSOR_X86_64)) +#if !(defined(Q_OS_VXWORKS) && (defined(Q_PROCESSOR_X86_64) || defined(Q_PROCESSOR_ARM_64))) CHECK_FP(long double); #endif