Description
Even though ARMv7 Android doesn't guarantee the presence of NEON, most devices have it and e.g. Firefox opts not to support ARMv7 devices that don't have it. (Notably the Tegra 2-based ones.)
To allow Rust code, including the standard library, to unconditionally use NEON in such a scenario, it would help a lot if upstream Rust supported an ARMv7+NEON Android target. (NEON support was explicitly removed from armv7-linux-androideabi
.
In order to test code on a system that has all the usual tooling, it's useful to have a corresponding GNU/Linux target, too. NEON was explicitly removed from armv7-unknown-linux-gnueabihf
and also from armv7-unknown-linux-musleabihf
.
Please add new androideabi
and gnueabihf
ARMv7 targets that have NEON enabled and a NEON-enabled standard library shipped via rustup
so that std::simd
ends up compiled with NEON enabled. (See the issue about boolean reductions there.)
How to name these is a total bikeshed, but as a starting point, I suggest armv7neon-unknown-linux-gnueabihf
and armv7neon-linux-androideabi
.