Skip to content
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

tests/run-make/fmt-write-bloat fails with lld #108137

Closed
matthiaskrgr opened this issue Feb 16, 2023 · 4 comments
Closed

tests/run-make/fmt-write-bloat fails with lld #108137

matthiaskrgr opened this issue Feb 16, 2023 · 4 comments
Labels
A-contributor-roadblock Area: Makes things more difficult for new contributors to rust itself A-linkage Area: linking into static, shared libraries and binaries A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc C-bug Category: This is a bug.

Comments

@matthiaskrgr
Copy link
Member

setting ld.lld as linker and running x.py test fails this test which was previously passing (gnu ld)

Check compiletest suite=run-make mode=run-make (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)

running 80 tests
ii.i...i.i..ii.F......iiiiii..................ii.i...iiiiiii.iiii...............
failures:

---- [run-make] tests/run-make/fmt-write-bloat stdout ----

error: make failed
status: exit status: 2
command: cd "/home/matthias/vcs/github/rust/tests/run-make/fmt-write-bloat" && AR="llvm-ar" CC="clang -ffunction-sections -fdata-sections -fPIC --target=x86_64-unknown-linux-gnu" CXX="clang++ -ffunction-sections -fdata-sections -fPIC --target=x86_64-unknown-linux-gnu" HOST_RPATH_DIR="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/lib" LD_LIB_PATH_ENVVAR="LD_LIBRARY_PATH" LLVM_BIN_DIR="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/ci-llvm/bin" LLVM_COMPONENTS="aarch64 aarch64asmparser aarch64codegen aarch64desc aarch64disassembler aarch64info aarch64utils aggressiveinstcombine all all-targets analysis arm armasmparser armcodegen armdesc armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser avrcodegen avrdesc avrdisassembler avrinfo binaryformat bitreader bitstreamreader bitwriter bpf bpfasmparser bpfcodegen bpfdesc bpfdisassembler bpfinfo cfguard codegen core coroutines coverage debuginfocodeview debuginfodwarf debuginfogsym debuginfomsf debuginfopdb demangle dlltooldriver dwarflinker dwp engine executionengine extensions filecheck frontendopenacc frontendopenmp fuzzercli fuzzmutate globalisel hexagon hexagonasmparser hexagoncodegen hexagondesc hexagondisassembler hexagoninfo instcombine instrumentation interfacestub interpreter ipo irreader jitlink libdriver lineeditor linker lto m68k m68kasmparser m68kcodegen m68kdesc m68kdisassembler m68kinfo mc mca mcdisassembler mcjit mcparser mips mipsasmparser mipscodegen mipsdesc mipsdisassembler mipsinfo mirparser msp430 msp430asmparser msp430codegen msp430desc msp430disassembler msp430info native nativecodegen nvptx nvptxcodegen nvptxdesc nvptxinfo objcarcopts objcopy object objectyaml option orcjit orcshared orctargetprocess passes powerpc powerpcasmparser powerpccodegen powerpcdesc powerpcdisassembler powerpcinfo profiledata remarks riscv riscvasmparser riscvcodegen riscvdesc riscvdisassembler riscvinfo runtimedyld scalaropts selectiondag sparc sparcasmparser sparccodegen sparcdesc sparcdisassembler sparcinfo support symbolize systemz systemzasmparser systemzcodegen systemzdesc systemzdisassembler systemzinfo tablegen target textapi transformutils vectorize webassembly webassemblyasmparser webassemblycodegen webassemblydesc webassemblydisassembler webassemblyinfo webassemblyutils windowsdriver windowsmanifest x86 x86asmparser x86codegen x86desc x86disassembler x86info x86targetmca xray" LLVM_FILECHECK="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck" NODE="/usr/bin/node" PYTHON="/usr/bin/python3" RUSTC="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/bin/rustc" RUSTDOC="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/bin/rustdoc" RUST_BUILD_STAGE="stage1-x86_64-unknown-linux-gnu" RUST_DEMANGLER="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-tools-bin/rust-demangler" S="/home/matthias/vcs/github/rust" TARGET="x86_64-unknown-linux-gnu" TARGET_RPATH_DIR="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/lib/rustlib/x86_64-unknown-linux-gnu/lib" TMPDIR="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/test/run-make/fmt-write-bloat/fmt-write-bloat" "make"
--- stdout -------------------------------
LD_LIBRARY_PATH="/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/test/run-make/fmt-write-bloat/fmt-write-bloat:/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/lib:/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu/release/deps:/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage0/lib" '/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/bin/rustc' --out-dir /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/test/run-make/fmt-write-bloat/fmt-write-bloat -L /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/test/run-make/fmt-write-bloat/fmt-write-bloat  main.rs -O
nm /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/test/run-make/fmt-write-bloat/fmt-write-bloat/main | "/home/matthias/vcs/github/rust/src/etc/cat-and-grep.sh" -v panic_bounds_check pad_integral Display Debug
[[[ begin stdout ]]]
                 w __cxa_finalize
00000000000041f8 d __dso_handle
0000000000004200 d DW.ref.rust_eh_personality
0000000000003040 d _DYNAMIC
0000000000001f78 t _fini
0000000000000718 r GCC_except_table39
                 w __gmon_start__
0000000000001f5c t _init
                 w _ITM_deregisterTMCloneTable
                 w _ITM_registerTMCloneTable
                 U __libc_start_main
0000000000001b50 T main
0000000000001b40 t rust_begin_unwind
0000000000001b30 t rust_eh_personality
00000000000019b0 T _start
00000000000006e0 r str.1
00000000000041f8 d __TMC_END__
0000000000001e80 t _ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17h871fedead7ea84b3E
0000000000001f50 t _ZN4core3any6TypeId2of17h84e574d3cf171891E
0000000000001bd0 T _ZN4core3fmt5write17h7865c5f96564637dE
0000000000001bb0 t _ZN4core3ops8function6FnOnce9call_once17h8ab17882ed87fa54E
0000000000001eb0 t _ZN4core3ptr106drop_in_place$LT$$RF$core..option..Option$LT$core..option..IntoIter$LT$core..char..EscapeDebug$GT$$GT$$GT$17h1be9d2945ec99ae1E
0000000000001ab0 t _ZN4core3ptr44drop_in_place$LT$$RF$mut$u20$main..Dummy$GT$17h0cef07d862927b54E
0000000000001e90 t _ZN4core4iter8adapters9enumerate18Enumerate$LT$I$GT$3new17h32367d3d4ca6a9d4E
0000000000001e90 t _ZN4core4iter8adapters9enumerate18Enumerate$LT$I$GT$3new17h6525e3630c4d2e08E
0000000000001e90 t _ZN4core4iter8adapters9enumerate18Enumerate$LT$I$GT$3new17h79798c87bae8866aE
0000000000001e90 t _ZN4core4iter8adapters9enumerate18Enumerate$LT$I$GT$3new17hca20ac0d92a55445E
0000000000001f00 T _ZN4core9panicking5panic17hd7b5d2748c2aec7cE
0000000000001ec0 T _ZN4core9panicking9panic_fmt17h4b17af6f1f8316bdE
0000000000001ac0 t _ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$10write_char17hf8f352dd20986878E
0000000000001ad0 t _ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_fmt17hf2426070b418db46E
0000000000001b20 t _ZN50_$LT$$RF$mut$u20$W$u20$as$u20$core..fmt..Write$GT$9write_str17h1393cc8c4e676a4dE

[[[ end stdout ]]]
Error: should not match: Debug
------------------------------------------
--- stderr -------------------------------
make: *** [Makefile:23: all] Error 1
------------------------------------------



failures:
    [run-make] tests/run-make/fmt-write-bloat
@matthiaskrgr matthiaskrgr added the C-bug Category: This is a bug. label Feb 16, 2023
@jyn514 jyn514 added A-testsuite Area: The testsuite used to check the correctness of rustc A-contributor-roadblock Area: Makes things more difficult for new contributors to rust itself labels Apr 27, 2023
@jyn514
Copy link
Member

jyn514 commented Apr 27, 2023

cc #103541

@Enselic
Copy link
Member

Enselic commented Jul 31, 2024

Triage: Can you still reproduce? This passes for me now with:

./x test tests/run-make/fmt-write-bloat

on x86_64-unknown-linux-gnu which uses lld by default.

@jieyouxu jieyouxu added A-linkage Area: linking into static, shared libraries and binaries A-run-make Area: port run-make Makefiles to rmake.rs labels Jul 31, 2024
@jieyouxu
Copy link
Member

jieyouxu commented Jul 31, 2024

Please lmw if this still fails with #128147? We ran the rmake.rs version through several try jobs and they didn't fail (AFAIK this should be using lld on linux-gnu since the default changed).

@saethlin
Copy link
Member

saethlin commented Aug 23, 2024

No new complaints, and I can confirm I have had no issues from this test locally when using lld.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-contributor-roadblock Area: Makes things more difficult for new contributors to rust itself A-linkage Area: linking into static, shared libraries and binaries A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc C-bug Category: This is a bug.
Projects
None yet
Development

No branches or pull requests

5 participants