-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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
Fix RISC-V VxWorks LLVM target triples #138427
Conversation
The targets used the plain `$ARCH` triple, which LLVM normalizes to `$ARCH-unknown-unknown`, which is inconsistent with the the other VxWorks targets which all use `$ARCH-unknown-linux-gnu$ABI`.
These commits modify compiler targets. |
Same here, r=me if the target maintainer is on board with the change. |
@rustbot blocked (waiting to hear back from target maintainers, not much for me or PR author to do) |
The target triple passed to compilers in vxworks is riscv32 and riscv64, but with numerous flags. I'll test the changes and let you know if unknown linux gnu target is compatible for these targets. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#138126 (Add an opt-out in pretty printing for RTN rendering) - rust-lang#138399 (Delegation: allow foreign fns `reuse`) - rust-lang#138406 (Update mdbook to 0.4.47) - rust-lang#138417 (minor interpreter cleanups) - rust-lang#138420 (Adapt to LLVM dropping CfiFunctionIndex::begin()/end()) - rust-lang#138423 (Don't emit error within cast function, propagate it as a `CastError`) - rust-lang#138425 (Remove `feature = "hash_raw_entry"`) - rust-lang#138427 (Fix RISC-V VxWorks LLVM target triples) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#138427 - madsmtm:vxworks-llvm-target, r=jieyouxu Fix RISC-V VxWorks LLVM target triples The targets `riscv32-wrs-vxworks` and `riscv64-wrs-vxworks` uses the plain `$ARCH` LLVM triple, which LLVM normalizes to `$ARCH-unknown-unknown`, we should use `$ARCH-unknown-linux-gnu$ABI` which is consistent with the the other VxWorks targets. Motivation: To make it easier to verify that [`cc-rs`' conversion from `rustc` to Clang/LLVM triples](rust-lang/cc-rs#1431) is correct. Alternative: Pass `$ARCH-unknown-none` in the other VxWorks LLVM triples, I don't know anything about VxWorks, so am unsure which is the most correct option. CC target maintainer `@biabbas.` r? jieyouxu
The targets
riscv32-wrs-vxworks
andriscv64-wrs-vxworks
uses the plain$ARCH
LLVM triple, which LLVM normalizes to$ARCH-unknown-unknown
, we should use$ARCH-unknown-linux-gnu$ABI
which is consistent with the the other VxWorks targets.Motivation: To make it easier to verify that
cc-rs
' conversion fromrustc
to Clang/LLVM triples is correct.Alternative: Pass
$ARCH-unknown-none
in the other VxWorks LLVM triples, I don't know anything about VxWorks, so am unsure which is the most correct option.CC target maintainer @biabbas.
r? jieyouxu