cross icon indicating copy to clipboard operation
cross copied to clipboard

Undefined temporary symbol `$BB342_17` when compiling `rustc-demangle`

Open AaronKutch opened this issue 2 years ago • 3 comments

Checklist

Describe your issue

When I run cross test --target mips-unknown-linux-gnu -Z build-std=core,alloc,proc_macro,std --features=std,zeroize_support,rand_support,serde_support,dag,try_support,debug on awint v0.12.0 (https://github.com/AaronKutch/awint/commit/74f41a5f41707e4c87dda98d51691c753465647a ) and cargo 1.74.0-nightly (925280f02 2023-08-25)

What target(s) are you cross-compiling for?

mips-unknown-linux-gnu

Which operating system is the host (e.g computer cross is on) running?

  • [ ] macOS
  • [ ] Windows
  • [X] Linux / BSD
  • [ ] other OS (specify in description)

What architecture is the host?

  • [X] x86_64 / AMD64
  • [ ] arm32
  • [ ] arm64 (including Mac M1)

What container engine is cross using?

  • [X] docker
  • [ ] podman
  • [ ] other container engine (specify in description)

cross version

cross 2.5.0

Example

navigate to workspace root and run cross test --target mips-unknown-linux-gnu -Z build-std=core,alloc,proc_macro,std --features=std,zeroize_support,rand_support,serde_support,dag,try_support,debug I get the result

error: Undefined temporary symbol $BB342_17

error: could not compile `rustc-demangle` (lib) due to previous error

Additional information / notes

No response

AaronKutch avatar Aug 29 '23 23:08 AaronKutch

I know that mips was demoted recently, this isn't necessary if I could run s390x-unknown-linux-gnu (I need a 32-bit big endian system) which seems to be blocked by the libtest issues

AaronKutch avatar Aug 29 '23 23:08 AaronKutch

This is rustc/llvm bug, and can be worked around by enabling optimization. https://github.com/rust-lang/rust/issues/108835#issuecomment-1636983993

taiki-e avatar Aug 30 '23 01:08 taiki-e

This issue should be fixed by llvm/llvm-project#80799. Initially, the cause of the issue and the solution are explained in llvm/llvm-project#80666, but more elegant solution is just to remove derived isBlockOnlyReachableByFallthrough for Mips architecture.

urosbericsyrmia avatar Feb 07 '24 15:02 urosbericsyrmia