Skip to content

(Re-)Introduce ARMv7+NEON Android and GNU/Linux targets #49897

Closed
@hsivonen

Description

@hsivonen

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-enhancementCategory: An issue proposing an enhancement or a PR with one.O-ArmTarget: 32-bit Arm processors (armv6, armv7, thumb...), including 64-bit Arm in AArch32 stateO-androidOperating system: AndroidT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions