Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.9
-
None
Description
The qfloat16 conversion tables are not included for arm64 builds, but GCC received support for __fp16 in aarch64 in version 6.1.0. For older gcc versions the tables need to be included.
aarch64-agl-linux-g++ --sysroot=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/8x96auto -c -pipe -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0=/usr/src/debug/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0 -fdebug-prefix-map=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/x86_64-linux= -fdebug-prefix-map=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/8x96auto= -fvisibility-inlines-hidden -DLINUX=1 -DWL_EGL_PLATFORM --sysroot=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/8x96auto -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_TESTLIB_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR='"/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/build/tests/auto/corelib/global/qfloat16"' -I/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/tests/auto/corelib/global/qfloat16 -I. -I../../../../../include -I../../../../../include/QtTest -I../../../../../include/QtCore -I.moc -I/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/mkspecs/linux-oe-g++ -o .obj/tst_qfloat16.o /home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/tests/auto/corelib/global/qfloat16/tst_qfloat16.cpp aarch64-agl-linux-g++ --sysroot=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/8x96auto -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/sysroots/8x96auto -Wl,-O1 -Wl,--enable-new-dtags -o tst_qfloat16 .obj/tst_qfloat16.o -L/home/qt/sapiippo/msm8996au-lv-0-1_hlos_dev/apps_proc/poky/build/tmp-glibc/work/8x96auto-agl-linux/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/build/lib -lQt5Test -lQt5Core -lpthread .obj/tst_qfloat16.o: In function `qfloat16::qfloat16(float)': /usr/src/debug/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/src/corelib/global/qfloat16.h:129: undefined reference to `qfloat16::basetable' /usr/src/debug/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/src/corelib/global/qfloat16.h:129: undefined reference to `qfloat16::basetable' /usr/src/debug/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/src/corelib/global/qfloat16.h:129: undefined reference to `qfloat16::basetable' /usr/src/debug/qtbase/5.9.2+gitAUTOINC+ec16ba393b-r0/git/src/corelib/global/qfloat16.h:130: undefined reference to `qfloat16::shifttable'
gcc version 5.3.0 (GCC)
aarch64-agl-linux-gcc -dM -E - < /dev/null |grep ARM
#define __ARM_SIZEOF_WCHAR_T 4
#define __ARM_FEATURE_UNALIGNED 1
#define __ARM_FEATURE_IDIV 1
#define __ARM_FP 12
#define __ARM_NEON_FP 12
#define __ARM_SIZEOF_MINIMAL_ENUM 4
#define __ARM_FEATURE_FMA 1
#define __ARM_64BIT_STATE 1
#define __ARM_ARCH_PROFILE 65
#define __ARM_PCS_AAPCS64 1
#define __ARM_FEATURE_CLZ 1
#define __ARM_ARCH 8
#define __ARM_ARCH_8A 1
#define __ARM_NEON 1
#define __ARM_FEATURE_NUMERIC_MAXMIN 1
#define __ARM_ARCH_ISA_A64 1