about summary refs log tree commit diff
path: root/tests/run-make
AgeCommit message (Collapse)AuthorLines
2024-08-10remove other warnings from rmake testsRémy Rakic-25/+25
2024-08-10remove unused imports from rmake testsRémy Rakic-52/+20
2024-08-10Add test for thin archive reading supportbjorn3-0/+31
2024-08-10Rollup merge of #128909 - saethlin:run-make-ice-yes, r=jieyouxuGuillaume Gomez-1/+1
Fix dump-ice-to-disk for RUSTC_ICE=0 users Before this change, the test fails if you run it with `RUSTC_ICE=0`.
2024-08-10Rollup merge of #128807 - ChrisDenton:bloat, r=jieyouxuGuillaume Gomez-3/+6
run-make: explaing why fmt-write-bloat is ignore-windows The trouble here is that libc doesn't exist on Windows. Well it kinda does but it isn't called that so we substitute a name that works. Ideally finding necessary libs for the platform would be done at a higher level but until then this should work. try-job: x86_64-msvc try-job: x86_64-mingw try-job: i686-msvc try-job: i686-mingw
2024-08-09Fix dump-ice-to-disk for RUSTC_ICE=0 usersBen Kimock-1/+1
2024-08-09Update reason why fmt-write-bloat ignores windowsChris Denton-2/+5
2024-08-09Only link libc on *nix platformsChris Denton-1/+1
2024-08-09Test --compress-debug-sections with rust-lld.Kyle Huey-0/+40
2024-08-09Rollup merge of #128823 - ChrisDenton:staticlib, r=jieyouxuMatthias Krüger-9/+8
run-make: enable msvc for staticlib-dylib-linkage `-Zstaticlib-allow-rdylib-deps` on MSVC returns things like `/LIBPATH:R:\rust\build\x86_64-pc-windows-msvc\test\run-make\staticlib-dylib-linkage\rmake_out`. That is a linker argument rather than a `cc` argument. Which makes sense because rustc interacts directly with the linker on MSVC targets. So we need to tell the C compiler to pass on the arguments to the linker. try-job: x86_64-msvc try-job: i686-msvc
2024-08-09Rollup merge of #128804 - ChrisDenton:redudant, r=jieyouxuMatthias Krüger-8/+8
run-make: enable msvc for redundant-libs The issue here was that `foo` was not exporting any functions therefore creating an import library was unnecessary and elided by the linker. I fixed it by exporting the functions. try-job: x86_64-msvc try-job: i686-msvc
2024-08-08run-make: enable msvc for staticlib-dylib-linkageChris Denton-9/+8
2024-08-08changes after reviewFolkert-14/+24
2024-08-08migrate `thumb-none-qemu` to rmakeFolkert-47/+51
2024-08-07Rollup merge of #128702 - yaahc:metrics-flag, r=estebankTrevor Gross-15/+71
Add -Zmetrics-dir=PATH to save diagnostic metadata to disk r? ``@estebank``
2024-08-08run-make: enable msvc for redundant-libsChris Denton-8/+8
2024-08-07Add -Zerror-metrics=PATH to save diagnostic metadata to diskJane Losare-Lusby-15/+71
2024-08-07Rollup merge of #128696 - Oneirical:second-linkage-rampage, r=jieyouxuMatthias Krüger-21/+37
Migrate `staticlib-dylib-linkage` `run-make` test to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). I'm quite sure this has the same issue as the one brought up in [this discussion](https://github.com/rust-lang/rust/pull/128407#discussion_r1702439172), so I elected to keep the ignore MSVC. try-job: aarch64-apple try-job: x86_64-gnu-llvm-17 try-job: armhf-gnu
2024-08-07Rollup merge of #128636 - folkertdev:rmake-thumb-none-cortex-m, r=jieyouxuMatthias Krüger-38/+59
migrate `thumb-none-cortex-m` to rmake tracking issue: https://github.com/rust-lang/rust/issues/121876 I'll leave some comments/questions inline r? ```@jieyouxu``` try-job: armhf-gnu try-job: dist-various-1 try-job: test-various
2024-08-07Rollup merge of #128384 - dheaton-arm:mte-test, r=jieyouxuMatthias Krüger-0/+341
Add tests to ensure MTE tags are preserved across FFI boundaries Added run-make tests to verify that, between a Rust-C FFI boundary in both directions, any MTE tags included in a pointer are preserved for the following pointer types, as well as any information stored using TBI: - int - float - string - function try-job: aarch64-gnu
2024-08-07rewrite pgo-indirect-call-promotion to rmakeOneirical-31/+45
2024-08-07rewrite pdb-buildinfo-cl-cmd to rmakeOneirical-17/+35
2024-08-07Rollup merge of #128757 - Oneirical:calm-before-the-sltorm, r=jieyouxuGuillaume Gomez-11/+22
Migrate `pgo-gen-lto` `run-make` test to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). This one is so easy, I'm surprised I missed it. try-job: aarch64-apple try-job: x86_64-msvc try-job: x86_64-mingw try-job: i686-msvc try-job: i686-mingw try-job: x86_64-gnu-llvm-17
2024-08-07Rollup merge of #128700 - Oneirical:i-ffind-these-tests-quite-simdple, ↵Guillaume Gomez-47/+63
r=jieyouxu Migrate `simd-ffi` `run-make` test to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). try-job: x86_64-msvc try-job: x86_64-mingw try-job: i686-msvc try-job: armhf-gnu try-job: test-various try-job: aarch64-apple try-job: x86_64-gnu-llvm-17
2024-08-07Rollup merge of #128656 - ChrisDenton:rust-lld, r=lqdGuillaume Gomez-6/+8
Enable msvc for run-make/rust-lld This is simply a matter of using the right argument for lld-link. As a bonus, I also fixed a typo. try-job: i686-msvc try-job: x86_64-msvc
2024-08-07Auto merge of #128196 - Oneirical:poltergeist-manitestation, r=jieyouxubors-85/+108
Migrate `cross-lang-lto-upstream-rlibs`, `long-linker-command-lines` and `long-linker-command-lines-cmd-exe` `run-make` tests to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). The `long-linker` tests are certainly doing something... interesting - they summon `rustc` calls with obscene quantities of arguments and check that this is appropriately handled. I removed the `RUSTC_ORIGINAL` magic - it's equivalent to `RUSTC` in `tools.mk`, so what is the purpose? Making it so the massive pile of flags doesn't modify rustc itself and start leaking into other tests? Tell me what you think. Please try: try-job: x86_64-msvc try-job: i686-msvc try-job: x86_64-mingw try-job: i686-mingw try-job: aarch64-apple try-job: test-various try-job: x86_64-gnu-debug try-job: x86_64-gnu-llvm-17
2024-08-06Rollup merge of #128649 - ChrisDenton:param-passing, r=jieyouxuTrevor Gross-18/+8
run-make: Enable msvc for `no-duplicate-libs` and `zero-extend-abi-param-passing` The common thing between these two tests is to use `#[link(..., kind="static")]` so that it doesn't try to do a DLL import. `zero-extend-abi-param-passing` also needs to have an optimized static library but there's only helper function for a non-optimized version. Rather than copy/pasting the code (and adding the optimization flag) I reused the same code so that it more easily be kept in sync. try-job: i686-msvc try-job: x86_64-msvc
2024-08-06Rollup merge of #128647 - ChrisDenton:link-args-order, r=jieyouxuTrevor Gross-6/+5
Enable msvc for link-args-order I could not see any reason in #70665 why this test needs to specifically use `ld`. Maybe to provide a consistent linker input line? In any case, the test does work for the MSVC linker. try-job: i686-msvc try-job: x86_64-msvc
2024-08-06Rollup merge of #128638 - ChrisDenton:link-dedup, r=jieyouxuTrevor Gross-8/+25
run-make: enable msvc for `link-dedup` This is just a case of differing style of linker arguments. I also cleaned up a bit where we were running the same command three times in a row. Instead I reused the output. One thing that confused me is why we were testing for the same lib three times in a row but not two. After figuring that out I added a note to hopefully save future readers some confusion. try-job: x86_64-msvc try-job: i686-msvc
2024-08-06Rollup merge of #128362 - folkertdev:naked-function-symbol-visibility, r=bjorn3Trevor Gross-0/+187
add test for symbol visibility of `#[naked]` functions tracking issue: #90957 This test is extracted from https://github.com/rust-lang/rust/pull/128004 That PR attempts to generated naked functions as an extern function declaration, combined with a global asm block that provides the implementation for that declaration. In order to link declaration and definition together, some flavor of external linking must be used: LLVM will error for other linkage types. Specifically the allowed options are `#[linkage = "external"]` and `#[linkage = "extern_weak"]`. That is kind of an implementation detail though: to the user, a naked function should just behave like a normal function. Hence it should be visible to the linker under the same circumstances as a normal, vanilla function and have the same attributes (Weak, External). Getting this behavior right will require some care, so I think it's a good idea to lock it in now, before making any changes, to make sure we don't regress. Are there any interesting cases that I missed here? E.g. is checking on different architectures worth it? I don't think the other binary types (rlib etc) are relevant here, but may be missing something. r? ``@bjorn3``
2024-08-06Rollup merge of #128107 - Oneirical:tomato-hartester, r=jieyouxuTrevor Gross-76/+95
Migrate `raw-dylib-alt-calling-convention`, `raw-dylib-c` and `redundant-libs` `run-make` tests to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). Please try: // try-job: x86_64-msvc // try-job: x86_64-mingw // try-job: i686-msvc try-job: x86_64-gnu-llvm-17 try-job: aarch64-apple
2024-08-07Rollup merge of #128710 - ChrisDenton:null, r=jieyouxuMatthias Krüger-0/+13
Don't ICE when getting an input file name's stem fails Fixes #128681 The file stem is only used as a user-friendly prefix on intermediary files. While nice to have, it's not the end of the world if it fails so there's no real reason to emit an error here. We can continue with a fixed name as we do when an anonymous string is used.
2024-08-06rewrite pgo-gen-lto to rmakeOneirical-11/+22
2024-08-06changes after reviewFolkert-10/+11
2024-08-06fix testEsteban Küber-15/+11
2024-08-06Move test to be make instead of uiEsteban Küber-0/+51
2024-08-06rewrite long-linker-command-lines-cmd-exe to rmakeOneirical-37/+32
2024-08-06rewrite long-linker-command-lines to rmakeOneirical-22/+21
2024-08-06rewrite cross-lang-lto-upstream-rlibs to rmakeOneirical-32/+61
2024-08-06rewrite staticlib-dylib-linkage to rmakeOneirical-21/+37
2024-08-05Check staticlib name falls back to `rust_out`Chris Denton-1/+5
2024-08-05Windows: Test if `\\.\NUL` works as an input fileChris Denton-0/+9
2024-08-05rewrite simd-ffi to rmakeOneirical-47/+63
2024-08-05add test for symbol visibility of `#[naked]` functionsFolkert-0/+187
2024-08-05rewrite cdylib-dylib-linkage to rmakeOneirical-31/+41
2024-08-05rewrite redundant-libs to rmakeOneirical-27/+41
2024-08-05rewrite raw-dylib-c to rmakeOneirical-28/+29
2024-08-05rewrite raw-dylib-alt-calling-conventions to rmakeOneirical-24/+28
2024-08-05Auto merge of #127095 - Oneirical:testiary-education, r=jieyouxubors-68/+115
Migrate `reproducible-build-2` and `stable-symbol-names` `run-make` tests to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). Needs try-jobs. try-job: x86_64-msvc try-job: armhf-gnu try-job: test-various try-job: aarch64-apple try-job: i686-msvc try-job: x86_64-mingw
2024-08-05Rollup merge of #128607 - ChrisDenton:visibility, r=jieyouxuMatthias Krüger-44/+32
Use `object` in `run-make/symbols-visibility` This is another case where we can simply use a rust library instead of wrangling nm. try-job: x86_64-msvc try-job: i686-msvc try-job: test-various