diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
commit | 218caa410aa38c29984be31a5229b9fa717560ee (patch) | |
tree | c54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/incremental/thinlto/cgu_keeps_identical_fn.rs | |
parent | Releasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/incremental/thinlto/cgu_keeps_identical_fn.rs')
-rw-r--r-- | src/test/incremental/thinlto/cgu_keeps_identical_fn.rs | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs b/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs deleted file mode 100644 index 31f329a7f..000000000 --- a/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs +++ /dev/null @@ -1,72 +0,0 @@ -// This test is almost identical to `cgu_invalided_via_import`, except that -// the two versions of `inline_fn` are identical. Neither version of `inlined_fn` -// ends up with any spans in its LLVM bitecode, so LLVM is able to skip -// re-building any modules which import 'inlined_fn' - -// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6 -// [cfail4]compile-flags: -Zincremental-relative-spans -// [cfail5]compile-flags: -Zincremental-relative-spans -// [cfail6]compile-flags: -Zincremental-relative-spans -// compile-flags: -Z query-dep-graph -O -// build-pass (FIXME(62277): could be check-pass?) - -#![feature(rustc_attrs)] -#![crate_type = "rlib"] -#![rustc_expected_cgu_reuse(module = "cgu_keeps_identical_fn-foo", cfg = "cfail2", kind = "no")] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-foo", - cfg = "cfail3", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-foo", - cfg = "cfail5", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-foo", - cfg = "cfail6", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-bar", - cfg = "cfail2", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-bar", - cfg = "cfail3", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-bar", - cfg = "cfail5", - kind = "post-lto" -)] -#![rustc_expected_cgu_reuse( - module = "cgu_keeps_identical_fn-bar", - cfg = "cfail6", - kind = "post-lto" -)] - -mod foo { - - // Trivial functions like this one are imported very reliably by ThinLTO. - #[cfg(any(cfail1, cfail4))] - pub fn inlined_fn() -> u32 { - 1234 - } - - #[cfg(not(any(cfail1, cfail4)))] - pub fn inlined_fn() -> u32 { - 1234 - } -} - -pub mod bar { - use foo::inlined_fn; - - pub fn caller() -> u32 { - inlined_fn() - } -} |