Skip to content

Conversation

nnethercote
Copy link
Contributor

It's not perfectly clear what the best behaviour is here, but I think this is an improvement.

r? @matthewjasper
cc @m-ou-se

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 9, 2023
@matthewjasper
Copy link
Contributor

@bors r+

@bors
Copy link
Collaborator

bors commented Oct 9, 2023

📌 Commit a6abc50 has been approved by matthewjasper

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 9, 2023
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Oct 9, 2023
… r=matthewjasper Improve handling of assertion failures with very long conditions It's not perfectly clear what the best behaviour is here, but I think this is an improvement. r? `@matthewjasper` cc `@m-ou-se`
bors added a commit to rust-lang-ci/rust that referenced this pull request Oct 9, 2023
…iaskrgr Rollup of 5 pull requests Successful merges: - rust-lang#115882 (improve the suggestion of `generic_bound_failure`) - rust-lang#116537 (Fix suggestion span involving wrongly placed generic arg on variant) - rust-lang#116543 (In smir `find_crates` returns `Vec<Crate>` instead of `Option<Crate>`) - rust-lang#116548 (Improve handling of assertion failures with very long conditions) - rust-lang#116556 (Sync rustc_codegen_cranelift) r? `@ghost` `@rustbot` modify labels: rollup
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Oct 9, 2023
… r=matthewjasper Improve handling of assertion failures with very long conditions It's not perfectly clear what the best behaviour is here, but I think this is an improvement. r? ``@matthewjasper`` cc ``@m-ou-se``
@oli-obk
Copy link
Contributor

oli-obk commented Oct 9, 2023

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Oct 9, 2023
@nnethercote
Copy link
Contributor Author

nnethercote commented Oct 9, 2023

The test failure was here:

2023-10-09T13:16:26.0432231Z failures: 2023-10-09T13:16:26.0434317Z 2023-10-09T13:16:26.0434846Z ---- [ui] tests/ui/macros/assert-long-condition.rs stdout ---- 2023-10-09T13:16:26.0437558Z diff of run.stderr: 2023-10-09T13:16:26.0437800Z 2023-10-09T13:16:26.0438136Z 1	thread 'main' panicked at $DIR/assert-long-condition.rs:7:5: 2023-10-09T13:16:26.0438534Z 2	assertion failed: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18 2023-10-09T13:16:26.0438879Z 3 + 19 + 20 + 21 + 22 + 23 + 24 + 25 == 0 2023-10-09T13:16:26.0439302Z -	note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace 2023-10-09T13:16:26.0439607Z +	stack backtrace: 2023-10-09T13:16:26.0439833Z + 0: rust_begin_unwind 2023-10-09T13:16:26.0440415Z + at /rustc/95049a4a9b4e0ee378a478958fde603ad441ee0d/library/std/src/panicking.rs:597:5 2023-10-09T13:16:26.0441138Z + 1: core::panicking::panic_fmt 2023-10-09T13:16:26.0441484Z + at /rustc/95049a4a9b4e0ee378a478958fde603ad441ee0d/library/core/src/panicking.rs:72:14 2023-10-09T13:16:26.0441802Z + 2: core::panicking::panic 2023-10-09T13:16:26.0442130Z + at /rustc/95049a4a9b4e0ee378a478958fde603ad441ee0d/library/core/src/panicking.rs:127:5 2023-10-09T13:16:26.0442442Z + 3: assert_long_condition::main 2023-10-09T13:16:26.0443119Z + 4: core::ops::function::FnOnce::call_once 2023-10-09T13:16:26.0443495Z +	note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. 

The problem is that in some cases RUST_BACKTRACE=1 is set, which changes the uninteresting parts of the output, which means the .run.stderr file doesn't match.

Other assert tests in tests/ui/macros/ instead use the error-pattern header to check the output of assertions. I didn't use that because it chops off whitespace from the start and end of the patterns, which means I couldn't precisely check for the expected + 19 + 20 + 21 + 22 + 23 + 24 + 25 == 0 output line.

In other words, a .run.stderr file over-specifies the expected output, while an error-pattern header under-specifies the expected output. I need something in between, that matches the assertion failed lines exactly, but ignores the backtrace lines.

@Mark-Simulacrum
Copy link
Member

IIRC, you can set a header like exec-env: RUST_BACKTRACE=0 or so? That'll disable the backtrace independent of runner environment.

The `\n` in the output is a little surprising. The next commit will deal with it.
The assertion in `assert-long-condition.rs` used to be fail like this, all on one line: ``` thread 'main' panicked at 'assertion failed: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18\n + 19 + 20 + 21 + 22 + 23 + 24 + 25 == 0', tests/ui/macros/assert-long-condition.rs:7:5 ``` The `\n` and subsequent indent is because the condition is pretty-printed, and the pretty-printer inserts a newline. Printing the newline in this way is arguably reasonable given that the message appears within single quotes, which is very similar to a string literal. However, after the assertion printing improvements that were released in 1.73, the assertion now fails like this: ``` thread 'main' panicked at tests/ui/macros/assert-long-condition.rs:7:5: assertion failed: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18\n + 19 + 20 + 21 + 22 + 23 + 24 + 25 == 0 ``` Now that there are no single quotes around the pretty-printed condition, the `\n` is quite strange. This commit gets rid of the `\n`, by removing the `escape_debug` done on the pretty-printed message. This results in the following: ``` thread 'main' panicked at tests/ui/macros/assert-long-condition.rs:7:5: assertion failed: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18 + 19 + 20 + 21 + 22 + 23 + 24 + 25 == 0 ``` The overly-large indent is still strange, but that's a separate pretty-printing issue. This change helps with rust-lang#108341.
@nnethercote nnethercote force-pushed the assert-long-condition branch from a6abc50 to 7528fdc Compare October 9, 2023 22:10
@nnethercote
Copy link
Contributor Author

IIRC, you can set a header like exec-env: RUST_BACKTRACE=0 or so? That'll disable the backtrace independent of runner environment.

Great suggestion, thank you. I have updated with this change.

@bors r=matthewjasper

@bors
Copy link
Collaborator

bors commented Oct 9, 2023

📌 Commit 7528fdc has been approved by matthewjasper

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Oct 9, 2023
@bors
Copy link
Collaborator

bors commented Oct 9, 2023

⌛ Testing commit 7528fdc with merge 2fc0d48...

bors added a commit to rust-lang-ci/rust that referenced this pull request Oct 9, 2023
…=matthewjasper Improve handling of assertion failures with very long conditions It's not perfectly clear what the best behaviour is here, but I think this is an improvement. r? `@matthewjasper` cc `@m-ou-se`
@nnethercote
Copy link
Contributor Author

Here's another example:

fn very_long_function_name(x: u32) -> u32 { x } fn main() { assert!( { let x = 1; let y = 2; very_long_function_name(x) + very_long_function_name(y) } == { let x = 0; let y = 1; very_long_function_name(x) + very_long_function_name(y) } ); }

Previously it would produce a single line of output on failure:

assertion failed: {\n let x = 1;\n let y = 2;\n very_long_function_name(x) + very_long_function_name(y)\n } ==\n {\n let x = 0;\n let y = 1;\n very_long_function_name(x) + very_long_function_name(y)\n } 

Now it produces something much better:

thread 'main' panicked at s3.rs:4:5: assertion failed: { let x = 1; let y = 2; very_long_function_name(x) + very_long_function_name(y) } == { let x = 0; let y = 1; very_long_function_name(x) + very_long_function_name(y) } 
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-apple-2 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
SCCACHE_BUCKET=rust-lang-ci-sccache2 SCRIPT=./x.py --stage 2 test tests/ui tests/rustdoc tests/run-make-fulldeps SHELL=/bin/bash SHLVL=3 SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.ByB7tssGkA/Listeners STATS_EXTP=https://provjobdsettingscdn.blob.core.windows.net/settings/provjobdsettings-0.5.154/provjobd.data STATS_RDCL=true STATS_TIS=mining STATS_TRP=true --- ---- [ui] tests/ui/panics/default-backtrace-ice.rs stdout ---- diff of stderr: 7 8 aborting due to `-Z treat-err-as-bug=1` - (end_short_backtrace) 11 (begin_short_backtrace) 12 (end_short_backtrace) 13 (begin_short_backtrace) --- To only update this specific test, also pass `--test-args panics/default-backtrace-ice.rs` error: 1 errors occurred comparing output. status: exit status: 101 command: env -u RUST_BACKTRACE RUSTC_ICE="0" "/Users/runner/work/rust/rust/build/x86_64-apple-darwin/stage2/bin/rustc" "/Users/runner/work/rust/rust/tests/ui/panics/default-backtrace-ice.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/Users/runner/.cargo" "--sysroot" "/Users/runner/work/rust/rust/build/x86_64-apple-darwin/stage2" "--target=x86_64-apple-darwin" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/Users/runner/work/rust/rust/build/x86_64-apple-darwin/test/ui/panics/default-backtrace-ice" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/Users/runner/work/rust/rust/build/x86_64-apple-darwin/native/rust-test-helpers" "-L" "/Users/runner/work/rust/rust/build/x86_64-apple-darwin/test/ui/panics/default-backtrace-ice/auxiliary" "-Z" "treat-err-as-bug=1" --- stderr ------------------------------- error[E0425]: cannot find value `missing_ident` in this scope ##[error] --> /Users/runner/work/rust/rust/tests/ui/panics/default-backtrace-ice.rs:21:13 | | LL | fn main() { missing_ident; } thread 'rustc' panicked at compiler/rustc_errors/src/lib.rs:1729:30: thread 'rustc' panicked at compiler/rustc_errors/src/lib.rs:1729:30: aborting due to `-Z treat-err-as-bug=1` 0: 0x10fb2081b - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h8a95a5cbccd78887 1: 0x10fb80ee3 - core::fmt::write::hb04d061035ed20ad 2: 0x10fb15b3e - std::io::Write::write_fmt::hf38694845b01a9f1 3: 0x10fb205f9 - std::sys_common::backtrace::print::h7a8d070d3d4ee1cf 3: 0x10fb205f9 - std::sys_common::backtrace::print::h7a8d070d3d4ee1cf 4: 0x10fb239f5 - std::panicking::default_hook::{{closure}}::hb4ab6daf06a58b92 5: 0x10fb2375c - std::panicking::default_hook::h4d5b7a6342554f08 6: 0x1184c916c - std[7f944414dabb1aa9]::panicking::update_hook::<alloc[2020624d4b317041]::boxed::Box<rustc_driver_impl[2147db866b029c2]::install_ice_hook::{closure#0}>>::{closure#0} 8: 0x10fb23e37 - std::panicking::begin_panic_handler::{{closure}}::h48c961c263d140d6 9: 0x10fb20d29 - ___udivmodti4 10: 0x10fb23bad - _rust_begin_unwind 11: 0x10fbac225 - core::panicking::panic_fmt::h4cf299f45ce0d3b5 11: 0x10fbac225 - core::panicking::panic_fmt::h4cf299f45ce0d3b5 12: 0x11cfc308f - <rustc_errors[9d06b0f5ddf88f00]::HandlerInner>::panic_if_treat_err_as_bug 13: 0x11cfc23d7 - <rustc_errors[9d06b0f5ddf88f00]::HandlerInner>::emit_diagnostic::{closure#2} 14: 0x11863345f - rustc_interface[12b8f4fb458e1a65]::callbacks::track_diagnostic 15: 0x11cfc1d3e - <rustc_errors[9d06b0f5ddf88f00]::HandlerInner>::emit_diagnostic 16: 0x11cfd2a51 - <rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed as rustc_errors[9d06b0f5ddf88f00]::diagnostic_builder::EmissionGuarantee>::diagnostic_builder_emit_producing_guarantee 17: 0x11b952acd - <rustc_resolve[f8ac38102d3e156e]::Resolver>::report_errors 18: 0x11b9d0a43 - <rustc_session[b0937f9425687dfb]::session::Session>::time::<(), <rustc_resolve[f8ac38102d3e156e]::Resolver>::resolve_crate::{closure#0}> 19: 0x11b9860ae - <rustc_resolve[f8ac38102d3e156e]::Resolver>::resolve_crate 20: 0x118639f25 - rustc_interface[12b8f4fb458e1a65]::passes::resolver_for_lowering 21: 0x11bfd668d - rustc_query_impl[d5e825b51704c2f7]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d5e825b51704c2f7]::query_impl::resolver_for_lowering::dynamic_query::{closure#2}::{closure#0}, rustc_middle[4d7fe7c2d38276b0]::query::erase::Erased<[u8; 8usize]>> 22: 0x11c0a2639 - <rustc_query_impl[d5e825b51704c2f7]::query_impl::resolver_for_lowering::dynamic_query::{closure#2} as core[a0f6323dda998a62]::ops::function::FnOnce<(rustc_middle[4d7fe7c2d38276b0]::ty::context::TyCtxt, ())>>::call_once 23: 0x11bf28c5b - rustc_query_system[df99d34b70760eb7]::query::plumbing::try_execute_query::<rustc_query_impl[d5e825b51704c2f7]::DynamicConfig<rustc_query_system[df99d34b70760eb7]::query::caches::SingleCache<rustc_middle[4d7fe7c2d38276b0]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[d5e825b51704c2f7]::plumbing::QueryCtxt, false> 24: 0x11c0119fa - rustc_query_impl[d5e825b51704c2f7]::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace 25: 0x118485896 - <rustc_middle[4d7fe7c2d38276b0]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[2147db866b029c2]::run_compiler::{closure#1}::{closure#2}::{closure#4}, &rustc_data_structures[d9c00a0ffddd01f5]::steal::Steal<(rustc_middle[4d7fe7c2d38276b0]::ty::ResolverAstLowering, alloc[2020624d4b317041]::rc::Rc<rustc_ast[71070f7c5b6984ff]::ast::Crate>)>> 26: 0x1184aa736 - rustc_span[132c6ce6dc48cbe2]::set_source_map::<core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>, rustc_interface[12b8f4fb458e1a65]::interface::run_compiler<core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>, rustc_driver_impl[2147db866b029c2]::run_compiler::{closure#1}>::{closure#0}::{closure#0}> 27: 0x11848faec - std[7f944414dabb1aa9]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[12b8f4fb458e1a65]::util::run_in_thread_with_globals<rustc_interface[12b8f4fb458e1a65]::interface::run_compiler<core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>, rustc_driver_impl[2147db866b029c2]::run_compiler::{closure#1}>::{closure#0}, core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>> 28: 0x11849129e - <<std[7f944414dabb1aa9]::thread::Builder>::spawn_unchecked_<rustc_interface[12b8f4fb458e1a65]::util::run_in_thread_with_globals<rustc_interface[12b8f4fb458e1a65]::interface::run_compiler<core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>, rustc_driver_impl[2147db866b029c2]::run_compiler::{closure#1}>::{closure#0}, core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[a0f6323dda998a62]::result::Result<(), rustc_span[132c6ce6dc48cbe2]::ErrorGuaranteed>>::{closure#1} as core[a0f6323dda998a62]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 30: 0x7ff80c1be1d3 - __pthread_start error: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md note: rustc 1.75.0-nightly (2fc0d4870 2023-10-09) running on x86_64-apple-darwin note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/Users/runner/.cargo -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0 -Z treat-err-as-bug=1 query stack during panic: #0 [resolver_for_lowering] getting the resolver for lowering end of query stack ------------------------------------------ 
@bors
Copy link
Collaborator

bors commented Oct 9, 2023

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Oct 9, 2023
@nnethercote
Copy link
Contributor Author

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 10, 2023
@nnethercote
Copy link
Contributor Author

@bors rollup

@bors
Copy link
Collaborator

bors commented Oct 10, 2023

⌛ Testing commit 7528fdc with merge 1501c72...

bors added a commit to rust-lang-ci/rust that referenced this pull request Oct 10, 2023
…=matthewjasper Improve handling of assertion failures with very long conditions It's not perfectly clear what the best behaviour is here, but I think this is an improvement. r? `@matthewjasper` cc `@m-ou-se`
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-stable failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures: ---- [codegen] tests/codegen/target-feature-inline-closure.rs stdout ---- error: verification with 'FileCheck' failed status: exit status: 1 command: "/checkout/obj/build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/target-feature-inline-closure/target-feature-inline-closure.ll" "/checkout/tests/codegen/target-feature-inline-closure.rs" "--allow-unused-prefixes" "--check-prefixes" "CHECK,NONMSVC" "--dump-input-context" "100" --- stderr ------------------------------- /checkout/tests/codegen/target-feature-inline-closure.rs:27:16: error: CHECK-NOT: excluded string found in input /checkout/tests/codegen/target-feature-inline-closure.rs:27:16: error: CHECK-NOT: excluded string found in input // CHECK-NOT: fadd ^ /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/target-feature-inline-closure/target-feature-inline-closure.ll:35:66: note: found here call fastcc void @_ZN4core9core_arch3x863avx13_mm256_add_ps17h50faddcd25a37f1cE(ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %_0, ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %1, ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %0) Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/target-feature-inline-closure/target-feature-inline-closure.ll Check file: /checkout/tests/codegen/target-feature-inline-closure.rs -dump-input=help explains the following input dump. Input was: <<<<<< <<<<<< 1: ; ModuleID = 'target_feature_inline_closure.5b935a73a363356c-cgu.0' 2: source_filename = "target_feature_inline_closure.5b935a73a363356c-cgu.0" 3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 4: target triple = "x86_64-unknown-linux-gnu" 5: 6: ; core::core_arch::x86::avx::_mm256_add_ps 7: ; Function Attrs: inlinehint mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable 8: define internal fastcc void @_ZN4core9core_arch3x863avx13_mm256_add_ps17h50faddcd25a37f1cE(ptr noalias nocapture noundef writeonly align 32 dereferenceable(32) %_0, ptr noalias nocapture noundef readonly align 32 dereferenceable(32) %a, ptr noalias nocapture noundef readonly align 32 dereferenceable(32) %b) unnamed_addr #0 { 9: start: 10: %0 = load <8 x float>, ptr %a, align 32 11: %1 = load <8 x float>, ptr %b, align 32 12: %2 = fadd <8 x float> %0, %1 13: store <8 x float> %2, ptr %_0, align 32 14: ret void 15: } 16: 17: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable 18: define void @with_avx(ptr noalias nocapture noundef writeonly sret(<8 x float>) align 32 dereferenceable(32) %_0, ptr noalias nocapture noundef readonly align 32 dereferenceable(32) %x) unnamed_addr #1 { 19: start: 20: %0 = load <8 x float>, ptr %x, align 32 21: %1 = fadd <8 x float> %0, %0 22: store <8 x float> %1, ptr %_0, align 32 23: ret void 24: } 25: 26: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable 27: define void @without_avx(ptr noalias nocapture noundef writeonly sret(<8 x float>) align 32 dereferenceable(32) %_0, ptr noalias nocapture noundef readonly align 32 dereferenceable(32) %x) unnamed_addr #2 { 28: start: 29: %0 = alloca <8 x float>, align 32 30: %1 = alloca <8 x float>, align 32 31: %2 = load <8 x float>, ptr %x, align 32 32: store <8 x float> %2, ptr %1, align 32 33: store <8 x float> %2, ptr %0, align 32 34: ; call core::core_arch::x86::avx::_mm256_add_ps 35: call fastcc void @_ZN4core9core_arch3x863avx13_mm256_add_ps17h50faddcd25a37f1cE(ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %_0, ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %1, ptr noalias nocapture noundef nonnull align 32 dereferenceable(32) %0) not:27 !~~~ error: no match expected 36: ret void 37: } 38: 39: attributes #0 = { inlinehint mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" "target-features"="+avx" } 40: attributes #1 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" "target-features"="+avx" } 41: attributes #2 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" } 42: 43: !llvm.module.flags = !{!0, !1} 44: !llvm.ident = !{!2} 45: 46: !0 = !{i32 8, !"PIC Level", i32 2} 47: !1 = !{i32 2, !"RtLibUseGOT", i32 1} 48: !2 = !{!"rustc version 1.75.0 (1501c7220 2023-10-10)"} ------------------------------------------ 
@bors
Copy link
Collaborator

bors commented Oct 10, 2023

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Oct 10, 2023
@nnethercote
Copy link
Contributor Author

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 10, 2023
@bors
Copy link
Collaborator

bors commented Oct 10, 2023

⌛ Testing commit 7528fdc with merge 091bb74...

@bors
Copy link
Collaborator

bors commented Oct 10, 2023

☀️ Test successful - checks-actions
Approved by: matthewjasper
Pushing 091bb74 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Oct 10, 2023
@bors bors merged commit 091bb74 into rust-lang:master Oct 10, 2023
@rustbot rustbot added this to the 1.75.0 milestone Oct 10, 2023
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (091bb74): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
2.6% [2.6%, 2.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

This benchmark run did not return any relevant results for this metric.

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 625.981s -> 627.172s (0.19%)
Artifact size: 270.83 MiB -> 270.83 MiB (-0.00%)

bors-ferrocene bot added a commit to ferrocene/ferrocene that referenced this pull request Oct 12, 2023
48: Pull upstream master 2023 10 12 r=tshepang a=Dajamante * rust-lang/rust#113487 * rust-lang/rust#116506 * rust-lang/rust#116448 * rust-lang/rust#116640 * rust-lang/rust#116627 * rust-lang/rust#116597 * rust-lang/rust#116436 * rust-lang/rust#116315 * rust-lang/rust#116219 * rust-lang/rust#113218 * rust-lang/rust#115937 * rust-lang/rust#116014 * rust-lang/rust#116623 * rust-lang/rust#112818 * rust-lang/rust#115948 * rust-lang/rust#116622 * rust-lang/rust#116621 * rust-lang/rust#116612 * rust-lang/rust#116611 * rust-lang/rust#116530 * rust-lang/rust#95967 * rust-lang/rust#116578 * rust-lang/rust#113915 * rust-lang/rust#116605 * rust-lang/rust#116574 * rust-lang/rust#116560 * rust-lang/rust#116559 * rust-lang/rust#116503 * rust-lang/rust#116444 * rust-lang/rust#116250 * rust-lang/rust#109422 * rust-lang/rust#116598 * rust-lang/rust#116596 * rust-lang/rust#116595 * rust-lang/rust#116589 * rust-lang/rust#116586 * rust-lang/rust#116551 * rust-lang/rust#116409 * rust-lang/rust#116548 * rust-lang/rust#116366 * rust-lang/rust#109882 * rust-lang/rust#116497 * rust-lang/rust#116532 * rust-lang/rust#116569 * rust-lang/rust#116561 * rust-lang/rust#116556 * rust-lang/rust#116549 * rust-lang/rust#116543 * rust-lang/rust#116537 * rust-lang/rust#115882 * rust-lang/rust#116142 * rust-lang/rust#115238 * rust-lang/rust#116533 * rust-lang/rust#116096 * rust-lang/rust#116468 * rust-lang/rust#116515 * rust-lang/rust#116454 * rust-lang/rust#116183 * rust-lang/rust#116514 * rust-lang/rust#116509 * rust-lang/rust#116487 * rust-lang/rust#116486 * rust-lang/rust#116450 * rust-lang/rust#114623 * rust-lang/rust#116416 * rust-lang/rust#116437 * rust-lang/rust#100806 * rust-lang/rust#116330 * rust-lang/rust#116310 * rust-lang/rust#115583 * rust-lang/rust#116457 * rust-lang/rust#116508 * rust-lang/rust#109214 * rust-lang/rust#116318 * rust-lang/rust#116501 * rust-lang/rust#116500 * rust-lang/rust#116458 * rust-lang/rust#116400 * rust-lang/rust#116277 * rust-lang/rust#114709 * rust-lang/rust#116492 * rust-lang/rust#116484 * rust-lang/rust#116481 * rust-lang/rust#116474 * rust-lang/rust#116466 * rust-lang/rust#116423 * rust-lang/rust#116297 * rust-lang/rust#114564 * rust-lang/rust#114811 * rust-lang/rust#116489 * rust-lang/rust#115304 Co-authored-by: Peter Hall <peter.hall@hyperexponential.com> Co-authored-by: Emanuele Vannacci <emanuele.vannacci@gmail.com> Co-authored-by: Neven Villani <vanille@crans.org> Co-authored-by: Alex Macleod <alex@macleod.io> Co-authored-by: Tamir Duberstein <tamird@gmail.com> Co-authored-by: Eduardo Sánchez Muñoz <eduardosm-dev@e64.io> Co-authored-by: koka <koka.code@gmail.com> Co-authored-by: bors <bors@rust-lang.org> Co-authored-by: Philipp Krones <hello@philkrones.com> Co-authored-by: Camille GILLOT <gillot.camille@gmail.com> Co-authored-by: Esteban Küber <esteban@kuber.com.ar> Co-authored-by: Ralf Jung <post@ralfj.de>
bors-ferrocene bot added a commit to ferrocene/ferrocene that referenced this pull request Oct 13, 2023
48: Pull upstream master 2023 10 12 r=tshepang a=Dajamante * rust-lang/rust#113487 * rust-lang/rust#116506 * rust-lang/rust#116448 * rust-lang/rust#116640 * rust-lang/rust#116627 * rust-lang/rust#116597 * rust-lang/rust#116436 * rust-lang/rust#116315 * rust-lang/rust#116219 * rust-lang/rust#113218 * rust-lang/rust#115937 * rust-lang/rust#116014 * rust-lang/rust#116623 * rust-lang/rust#112818 * rust-lang/rust#115948 * rust-lang/rust#116622 * rust-lang/rust#116621 * rust-lang/rust#116612 * rust-lang/rust#116611 * rust-lang/rust#116530 * rust-lang/rust#95967 * rust-lang/rust#116578 * rust-lang/rust#113915 * rust-lang/rust#116605 * rust-lang/rust#116574 * rust-lang/rust#116560 * rust-lang/rust#116559 * rust-lang/rust#116503 * rust-lang/rust#116444 * rust-lang/rust#116250 * rust-lang/rust#109422 * rust-lang/rust#116598 * rust-lang/rust#116596 * rust-lang/rust#116595 * rust-lang/rust#116589 * rust-lang/rust#116586 * rust-lang/rust#116551 * rust-lang/rust#116409 * rust-lang/rust#116548 * rust-lang/rust#116366 * rust-lang/rust#109882 * rust-lang/rust#116497 * rust-lang/rust#116532 * rust-lang/rust#116569 * rust-lang/rust#116561 * rust-lang/rust#116556 * rust-lang/rust#116549 * rust-lang/rust#116543 * rust-lang/rust#116537 * rust-lang/rust#115882 * rust-lang/rust#116142 * rust-lang/rust#115238 * rust-lang/rust#116533 * rust-lang/rust#116096 * rust-lang/rust#116468 * rust-lang/rust#116515 * rust-lang/rust#116454 * rust-lang/rust#116183 * rust-lang/rust#116514 * rust-lang/rust#116509 * rust-lang/rust#116487 * rust-lang/rust#116486 * rust-lang/rust#116450 * rust-lang/rust#114623 * rust-lang/rust#116416 * rust-lang/rust#116437 * rust-lang/rust#100806 * rust-lang/rust#116330 * rust-lang/rust#116310 * rust-lang/rust#115583 * rust-lang/rust#116457 * rust-lang/rust#116508 * rust-lang/rust#109214 * rust-lang/rust#116318 * rust-lang/rust#116501 * rust-lang/rust#116500 * rust-lang/rust#116458 * rust-lang/rust#116400 * rust-lang/rust#116277 * rust-lang/rust#114709 * rust-lang/rust#116492 * rust-lang/rust#116484 * rust-lang/rust#116481 * rust-lang/rust#116474 * rust-lang/rust#116466 * rust-lang/rust#116423 * rust-lang/rust#116297 * rust-lang/rust#114564 * rust-lang/rust#114811 * rust-lang/rust#116489 * rust-lang/rust#115304 Co-authored-by: Emanuele Vannacci <emanuele.vannacci@gmail.com> Co-authored-by: Neven Villani <vanille@crans.org> Co-authored-by: Alex Macleod <alex@macleod.io> Co-authored-by: Tamir Duberstein <tamird@gmail.com> Co-authored-by: Eduardo Sánchez Muñoz <eduardosm-dev@e64.io> Co-authored-by: koka <koka.code@gmail.com> Co-authored-by: bors <bors@rust-lang.org> Co-authored-by: Philipp Krones <hello@philkrones.com> Co-authored-by: Camille GILLOT <gillot.camille@gmail.com> Co-authored-by: Esteban Küber <esteban@kuber.com.ar> Co-authored-by: Ralf Jung <post@ralfj.de> Co-authored-by: ShE3py <52315535+she3py@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

9 participants