Summary: | [arm] Mixing between FPA libraries and non-FPA, hardware FPU and software FPU | ||
---|---|---|---|
Product: | liboil | Reporter: | Sebastian Dröge (slomo) <slomo> |
Component: | unknown | Assignee: | David Schleef <ds> |
Status: | NEW --- | QA Contact: | David Schleef <ds> |
Severity: | blocker | ||
Priority: | medium | CC: | lool, n770galaxy |
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Sebastian Dröge (slomo)
2008-02-26 02:07:14 UTC
Probably relevant part of configure output: checking to see if compiler understands "-Wa,-mfpu=vfp"... yes checking to see if compiler understands "-Wa,-mfloat-abi=softfp"... yes And everything is compiled with "-mfpu=vfp -mfloat-abi=softfp". Also the arm check in m4/as-host-defines.m4 is a bit too specific. It should check at least armel too if I'm not mistaken... Ok, so configure needs to check, additional to the check if the compiler supports these flags, that the system libraries are EABI and what else is required. I think using either the -mfpu=vfp or -mfloat-abi=softfp flags is incorrect, except maybe for compiling some VFP code. Have to ping Josep Torra about this, as he wrote the VFP code. Those flags should be used when liboil is crosscompiled for a target hardware that provides the vfp coprocessor, examples are TI OMAP 2420 used on nokia IT n8x0 or freescale MX.31. Adding those flags are also intended for the scalar floating point operations being done on the VFP coprocessor. The VFP cflags are only used for compiling VFP code now. Should be more like x86 does things. According to scratchbox, the ARM code compiles. Dunno if it works, as qemu fails on liboil code. Still fails on plain arm with old abi: math_vfp.c can't be compiled because -mfloat-abi=hard && -mfpu=vfp are not compatible, -mfloat-abi=hard is set implicitely by the toolchain. What about this patch: http://svn.debian.org/viewsvn/pkg-gstreamer/unstable/liboil/debian/patches/01_arm-vfp.patch?rev=1443&view=auto The check should maybe be "x${host_os}" != "xlinux-gnu" or contain all known ${host_os} variables that are eabi. Could you recheck this with git master? |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.