-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
AArch64 build fails surprisingly close to the end (building sys0.o) #10791
Comments
Imma try this with a newer LLVM and see what happens. |
Same error with LLVM 3.6.0. I missed this earlier, but:
I also missed mentioning that you do need a small patch to Make.inc to define aarch64 as "not x86":
|
what's in /proc/cpuinfo on this machine? |
(taken from http://newandroidbook.com/Articles/Nexus9.html)
|
interesting, this seems to be the first ARM chip that has been attempted that does not have VFP. that means calling convention is probably correct. |
VFPv3/v4 is apparently pulled into the main instruction set, and NEON is replaced by AdvancedSIMD. I'm not sure why it isn't listed in cpuinfo, though. Quoting http://people.linaro.org/~rikuvoipio/aarch64-talk/#/17: "VFP/SIMD mandatory - no soft float ABI" |
With the new updates on using the VFP2 calling convention by default, I wonder if this works now. |
Good question; I'll see what I can do. |
Bump. Closing, but reopen if still breaking. |
What? The close is obviously premature. |
OpenBLAS doesn't build anymore. Yay. |
Switching to system BLAS/LAPACK, looks like the same assertion:
|
Can you try with llvm-svn, this may potentially be fixed there as part of my effort to improve GOT relocations. If not, I'll need to take a look at some point. |
Sure thing. |
Do we build at all on SVN right now?
|
Not anymore apparently. LLVM APIs changed again. Should be straightforward fix, but I'm not currently in a position to do & test it. |
No problem. |
You can try the release_37 branch of LLVM which should have fewer API changes on it. |
@pao Glad that my premature closing helped revisit the current status. |
A bump would have done the same. |
Sure. My bad. |
Different set of issues on release_37:
|
And making the suggested changes in codegen.cpp, we get back to:
|
@pao could you please confirm if this is still an issue for you on the LLVM 3.7.0 or 3.7.1 release? Given that I'm able to get all tests pass on AArch64 apart from libunwind and blas bugs, it's likely that this is fixed before LLVM 3.7.0 is released. Will close in a few days. |
Quite possible that it would work. I don't have my tablet rooted at the moment, and don't think I'll get around to it in the "a few days" timeframe--but I think your success is probably sufficient to close this. |
Hi. I may have similar issue detailed in the link using LLVM 3.7.0. I added a Make.user file with LLVM=3.7.1 but it still builds LLVM 3.7.0. If not related sorry for the noise. https://groups.google.com/forum/m/#!topic/julia-users/NO6Lox7r_Xc |
probably need to add |
Your screenshot suggest that you are building for a 32bit ARM so it's unrelated to this issue. In additional to the |
It's LLVM_VER=3.7.1 (with a _VER suffix). -erik On Wed, Jan 6, 2016 at 2:51 PM, tomaklutfu [email protected] wrote:
Erik Schnetter [email protected] |
Thanks all. Yes, I mean LLVM_VER. Issue was 'override' . I'll try building again. |
Nexus 9, in a Vivid Vervet (Ubuntu 15.04 beta) chroot.
Make.user
Needed system libunwind to pick up aarch64 patches post-1.1 release but applied to the Ubuntu repository. Needed OpenBLAS-develop to pick up this build fix.
Anyone know what LLVM is telling me we've done wrong, here?
The text was updated successfully, but these errors were encountered: