Skip to content

Commit

Permalink
Rollup merge of #136004 - mrkajetanp:aarch64-skip-large-const-alloc-t…
Browse files Browse the repository at this point in the history
…ests, r=Kobzol

tests: Skip const OOM tests on aarch64-unknown-linux-gnu

Skip const OOM tests on AArch64 Linux through explicit annotations instead of inside opt-dist.
Intended to avoid confusion in cases like #135952.

Prerequisite for #135960.

 r? `@Kobzol`
cc `@workingjubilee`

try-job: dist-aarch64-linux
  • Loading branch information
matthiaskrgr authored Jan 30, 2025
2 parents c32f2c7 + b7916fb commit 47ee068
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 14 deletions.
12 changes: 1 addition & 11 deletions src/tools/opt-dist/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -148,16 +148,6 @@ fn create_environment(args: Args) -> anyhow::Result<(Environment, Vec<String>)>

let is_aarch64 = target_triple.starts_with("aarch64");

let skip_tests = if is_aarch64 {
vec![
// Those tests fail only inside of Docker on aarch64, as of December 2024
"tests/ui/consts/promoted_running_out_of_memory_issue-130687.rs".to_string(),
"tests/ui/consts/large_const_alloc.rs".to_string(),
]
} else {
vec![]
};

let checkout_dir = Utf8PathBuf::from("/checkout");
let env = EnvironmentBuilder::default()
.host_tuple(target_triple)
Expand All @@ -169,7 +159,7 @@ fn create_environment(args: Args) -> anyhow::Result<(Environment, Vec<String>)>
.shared_llvm(true)
// FIXME: Enable bolt for aarch64 once it's fixed upstream. Broken as of December 2024.
.use_bolt(!is_aarch64)
.skipped_tests(skip_tests)
.skipped_tests(vec![])
.build()?;

(env, shared.build_args)
Expand Down
2 changes: 2 additions & 0 deletions tests/ui/consts/large_const_alloc.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
//@ only-64bit
// on 32bit and 16bit platforms it is plausible that the maximum allocation size will succeed
// FIXME (#135952) In some cases on AArch64 Linux the diagnostic does not trigger
//@ ignore-aarch64-unknown-linux-gnu

const FOO: () = {
// 128 TiB, unlikely anyone has that much RAM
Expand Down
4 changes: 2 additions & 2 deletions tests/ui/consts/large_const_alloc.stderr
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
error[E0080]: evaluation of constant value failed
--> $DIR/large_const_alloc.rs:6:13
--> $DIR/large_const_alloc.rs:8:13
|
LL | let x = [0_u8; (1 << 47) - 1];
| ^^^^^^^^^^^^^^^^^^^^^ tried to allocate more memory than available to compiler

error[E0080]: could not evaluate static initializer
--> $DIR/large_const_alloc.rs:11:13
--> $DIR/large_const_alloc.rs:13:13
|
LL | let x = [0_u8; (1 << 47) - 1];
| ^^^^^^^^^^^^^^^^^^^^^ tried to allocate more memory than available to compiler
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
// Needs the max type size to be much bigger than the RAM people typically have.
//@ only-64bit
// FIXME (#135952) In some cases on AArch64 Linux the diagnostic does not trigger
//@ ignore-aarch64-unknown-linux-gnu

pub struct Data([u8; (1 << 47) - 1]);
const _: &'static Data = &Data([0; (1 << 47) - 1]);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error[E0080]: evaluation of constant value failed
--> $DIR/promoted_running_out_of_memory_issue-130687.rs:8:32
--> $DIR/promoted_running_out_of_memory_issue-130687.rs:10:32
|
LL | const _: &'static Data = &Data([0; (1 << 47) - 1]);
| ^^^^^^^^^^^^^^^^^^ tried to allocate more memory than available to compiler
Expand Down

0 comments on commit 47ee068

Please sign in to comment.