-
Notifications
You must be signed in to change notification settings - Fork 63
use -O0 when building release LLVM on sparc #61
use -O0 when building release LLVM on sparc #61
Conversation
The bits produced by gcc above -O0 when building rust's private copy of llvm on sparc result in either versions of llvm-tblgen that consistently segfault or produce otherwise unuseable code. This does not affect cross-compiles for some reason. Investigation with gcc upstream is in progress.
Weird! Is the resulting LLVM usable? I figured that an LLVM at O0 would be unbearably slow... |
It's usable with -O0, just really slow (but not quite as slow as a normal debug build). But considering that it doesn't work at all otherwise, there's not much choice. Investigation is being done with one of the gcc maintainers. It's possible that some other combination of options might work here, or that I could potentially limit the application of -O0 to specific files. If you'd prefer to wait until I can refine this further to minimize the performance impact, that's perfectly fine with me. While I'm waiting on a response from the gcc maintainer, I'm investigating other combinations of options to see if they can workaround the issue. But the change I proposed here is the only one that works reliably so far. |
Ok sounds reasonable to me! |
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
use -O0 when building release LLVM on sparc
The bits produced by gcc above -O0 when building rust's private copy of llvm on
sparc result in either versions of llvm-tblgen that consistently segfault or
produce otherwise unuseable code. This does not affect cross-compiles for some
reason. Investigation with gcc upstream is in progress.