gecko-dev/config
Mike Hommey d4ea925beb Bug 1557229 - Add -d16 as a target_feature along +neon for rust code. r=nalexander
When enabling neon (--with-fpu=neon, or when the C++ compiler defaults
to use neon), we pass +neon as a target feature to the rust compiler.
That enables neon in rust, which is the default with the
thumbv7neon-linux-gnueabihf rust target, but not the default for the
armv7-unknown-linux-gnueabihf rust target.

ARM processors may have various different FPUs, with different number of
registers. On ARMv7, there are FPUs with 16 registers and FPUs with 32
registers. NEON requires 32 registers.

Because the common denominator for ARMv7 is 16 registers, the
armv7-unknown-linux-gnueabihf rust target defaults to 16 registers,
although by enabling neon, we're guaranteed the processor will have 32.

But while the rust compiler keeps limited to 16 registers, it also hits
a wall while compiling the hyper crate, where it finds it doesn't have
enough registers (which in itself can be considered a bug).

Since enabling neon means there are 32 registers available, it makes
sense to tell the compiler to lift the restricted use of FPU registers,
and that's what the `-d16` target feature does.

That's the default for the thumbv7neon-linux-gnueabihf rust target, so
nothing is changed, there, and fixes things for the
armv7-unknown-linux-gnueabihf rust target.

Differential Revision: https://phabricator.services.mozilla.com/D33907

--HG--
extra : moz-landing-system : lando
2019-06-07 00:47:03 +00:00
..
external Bug 1555205 - Move db/sqlite3 to third_party/; r=mak 2019-05-29 10:16:29 +00:00
faster
makefiles Bug 1557229 - Add -d16 as a target_feature along +neon for rust code. r=nalexander 2019-06-07 00:47:03 +00:00
Moz
mozunit
tests
AB_rCD.mk
autoconf-js.mk.in
autoconf.mk.in
baseconfig.mk Bug 1508976 - Produce a multi-architecture GeckoView "fat AAR". r=glandium 2019-05-30 15:22:09 +00:00
check_js_msg_encoding.py
check_js_opcode.py
check_macroassembler_style.py
check_source_count.py
check_spidermonkey_style.py Bug 1551639 - Use .inc suffix for generated source files that are only included. r=nalexander 2019-06-06 04:34:53 +00:00
check_vanilla_allocations.py
config.mk Bug 1542746 - remove code for frontend-based PGO instrumentation; r=dmajor 2019-05-24 20:00:38 +00:00
createprecomplete.py Bug 1547730 - Fix precomplete file generation when passing in unicode strings. r=glandium 2019-05-28 14:28:57 +00:00
emptyvars-js.mk.in
emptyvars.mk.in
gcc_hidden.h
gcc-stl-wrapper.template.h
install.bat
make-stl-wrappers.py
make-system-wrappers.py
make-windows-h-wrapper.py
Makefile.in
milestone.txt Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-05-20 13:22:45 +00:00
moz.build
MozZipFile.py
msvc-stl-wrapper.template.h
nsinstall.c
nsinstall.py
pathsub.c
pathsub.h
printconfigsetting.py
printprereleasesuffix.py
pythonpath.py
rebuild_check.py
recurse.mk
rules.mk Bug 1542746 - remove code for frontend-based PGO instrumentation; r=dmajor 2019-05-24 20:00:38 +00:00
run_spidermonkey_checks.py
run-and-prefix.py
static-checking-config.mk
stl-headers.mozbuild
system_header_util.py
system-headers.mozbuild
version_win.pl
version.mk
windows-h-constant.decls.h
windows-h-unicode.decls.h
windows-h-wrapper.template.h