Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Detect ARMv7 CPUs without NEON extensions and treat as ARMv6 #593

Merged
merged 1 commit into from
Jul 19, 2016

Conversation

sourcefrog
Copy link
Contributor

Fixes /issues/587

@sourcefrog
Copy link
Contributor Author

NB I don't have any other ARM machines on which I could test this.

@sourcefrog
Copy link
Contributor Author

AppVeyor failure seems like an unrelated network error

https://ci.appveyor.com/project/brson/rustup-rs/build/1.0.401/job/t8lswqjhwcxg3020

@brson
Copy link
Contributor

brson commented Jul 19, 2016

Thanks for the investigation and the patch @sourcefrog!

@alexcrichton and @japaric what do you think of this? Seems like something's wrong with our target defs.

@sourcefrog
Copy link
Contributor Author

Hi brson, are you suggesting maybe you instead want to change the ARMv7 build to work without NEON? That would be another option. Or, you could have a separate build for ARMv7+NEON vs without.

I don't know how much of a boost use of NEON gives to Rust performance, or how common CPUs with and without it are.

@alexcrichton
Copy link
Member

This seems like a fine patch to merge for now at least (to fix the target detection). I feel like any decision we make on the ARM target we'll eventually get wrong (unless we ship everyone ARMv5 compatible code), so I'm not sure if it's a strong indicator to change the target just yet.

@brson brson merged commit de0dbdb into rust-lang:master Jul 19, 2016
@brson
Copy link
Contributor

brson commented Jul 19, 2016

@sourcefrog oh I wasn't suggesting anything in particular. Getting toolchains to support the wide variety of arm configs is difficult and I just wanted confirmation from folks who are more familiar. Thanks again.

@japaric
Copy link
Member

japaric commented Jul 19, 2016

For the record: the topic of Scaleway, ARMv7 and NEON has come up before in the users forum. The TL;DR is:

  • The common case is ARMv7 with NEON support. Scaleway seems to be an outlier here.
  • If you have an ARMv7 processor without NEON, you should use the arm-unknown-linux-gnueabihf target (what this PR does!) because there's not much difference (codegen wise) between that target and the (non existent) armv7-unknown-linux-gnueabihf with NEON disabled.

AJ-Ianozi pushed a commit to AJ-Ianozi/getada-download that referenced this pull request Oct 12, 2023
Detect ARMv7 CPUs without NEON extensions and treat as ARMv6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants