You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This example should be buildable with a recent nightly rust and just executing make.
The project uses the aarch64-unknown-none target, and has additional rustflags in .cargo/config. However, it seems that xbuild is ignoring the contents of .cargo/config when it builds the sysroot crates.
In the example uploaded, it is set that no hard-float code should be emitted (-fp-armv8). This is honored for the actual crate being compiled, but not for the sysroot.
Here's a dissasembly of the emitted code where you can see that with xbuild, an ARM floating point register (q0) is being emitted:
Hi,
for the following description please refer to an example uploaded to https://github.com/rust-embedded/rust-raspi3-tutorial/tree/no_float/float_reg_emission
This example should be buildable with a recent nightly rust and just executing
make
.The project uses the
aarch64-unknown-none
target, and has additional rustflags in.cargo/config
. However, it seems that xbuild is ignoring the contents of.cargo/config
when it builds the sysroot crates.In the example uploaded, it is set that no hard-float code should be emitted (
-fp-armv8
). This is honored for the actual crate being compiled, but not for the sysroot.Here's a dissasembly of the emitted code where you can see that with
xbuild
, an ARM floating point register (q0
) is being emitted:Using
xargo
within the same example, this doesn't happen:xargo build --target=aarch64-unknown-none --release cp target/aarch64-unknown-none/release/kernel8 . make objdump
No float regs here:
The text was updated successfully, but these errors were encountered: