[D-runtime] [dlang/druntime] 7fd7b8: ARM: Explicitly specify required FPU mode in Fiber...
GitHub via D-runtime
d-runtime at puremagic.com
Fri Oct 14 11:05:17 PDT 2016
Branch: refs/heads/master
Home: https://github.com/dlang/druntime
Commit: 7fd7b83281b1c059ff51e7403dc4122ddec17692
https://github.com/dlang/druntime/commit/7fd7b83281b1c059ff51e7403dc4122ddec17692
Author: Johannes Pfau <johannespfau at gmail.com>
Date: 2016-10-05 (Wed, 05 Oct 2016)
Changed paths:
M src/core/threadasm.S
Log Message:
-----------
ARM: Explicitly specify required FPU mode in Fiber ASM
The threadASM code requires a vfp or newer unit for the vpush
and vpop instructions. There's exaclty one older floating point ARM
unit: The fpa unit. This unit is not supported in GCC but it is
supported in binutils.
This causes the following problem: When GCC is not explicitly configured
with --with-fpu it will not pass fpu flags to binutils as. So binutils
will use the binutils standard mode which is fpa! This then causes
compilation errors.
So in the end even though the gcc preprocessor claims vfp support via
__ARM_PCS_VFP we still have to request vfp explicitly in the ASM.
Note that this is not a restriction: As GCC doesn't support FPA
we can't compile phobos in FPA mode anyway. Newer floating point
units are fully compatible with vfp, so we can specify .fpu vfp
and still compile phobos with support for newer FPUs.
Commit: ee1b9b26d784b8ae18db9122157f9cd7f2442ce6
https://github.com/dlang/druntime/commit/ee1b9b26d784b8ae18db9122157f9cd7f2442ce6
Author: David Nadlinger <code at klickverbot.at>
Date: 2016-10-14 (Fri, 14 Oct 2016)
Changed paths:
M src/core/threadasm.S
Log Message:
-----------
Merge pull request #1667 from jpf91/fiberARM
ARM: Explicitly specify required FPU mode in Fiber ASM
Compare: https://github.com/dlang/druntime/compare/66b4c97d1a82...ee1b9b26d784
More information about the D-runtime
mailing list