-
Notifications
You must be signed in to change notification settings - Fork 91
Closed
Description
Looks like some translations are missing?
./tests/ui/simd/intrinsic/generic-select.rs
// build-fail
// Test that the simd_select intrinsic produces ok-ish error
// messages when misused.
#![feature(repr_simd, platform_intrinsics)]
#![allow(non_camel_case_types)]
#[repr(simd)]
#[derive(Copy, Clone)]
pub struct f32x4(pub f32, pub f32, pub f32, pub f32);
#[repr(simd)]
#[derive(Copy, Clone)]
pub struct u32x4(pub u32, pub u32, pub u32, pub u32);
#[repr(simd)]
#[derive(Copy, Clone, PartialEq)]
struct b8x4(pub i8, pub i8, pub i8, pub i8);
#[repr(simd)]
#[derive(Copy, Clone, PartialEq)]
struct b8x8(pub i8, pub i8, pub i8, pub i8, pub i8, pub i8, pub i8, pub i8);
extern "platform-intrinsic" {
fn simd_select<T, U>(x: T, a: U, b: U) -> U;
fn simd_select_bitmask<T, U>(x: T, a: U, b: U) -> U;
}
fn main() {
let m4 = b8x4(0, 0, 0, 0);
let m8 = b8x8(0, 0, 0, 0, 0, 0, 0, 0);
let x = u32x4(0, 0, 0, 0);
let z = f32x4(0.0, 0.0, 0.0, 0.0);
unsafe {
simd_select(m4, x, x);
simd_select(m8, x, x);
//~^ ERROR mismatched lengths: mask length `8` != other vector length `4`
simd_select(x, x, x);
//~^ ERROR mask element type is `u32`, expected `i_`
simd_select(z, z, z);
//~^ ERROR mask element type is `f32`, expected `i_`
simd_select(m4, 0u32, 1u32);
//~^ ERROR found non-SIMD `u32`
simd_select_bitmask(0u16, x, x);
//~^ ERROR invalid bitmask `u16`, expected `u8` or `[u8; 1]`
simd_select_bitmask(0u8, 1u32, 2u32);
//~^ ERROR found non-SIMD `u32`
simd_select_bitmask(0.0f32, x, x);
//~^ ERROR invalid bitmask `f32`, expected `u8` or `[u8; 1]`
simd_select_bitmask("x", x, x);
//~^ ERROR invalid bitmask `&str`, expected `u8` or `[u8; 1]`
}
}error[E0511]: invalid monomorphization of `simd_select` intrinsic: mismatched lengths: mask length `8` != other vector length `4`
--> ./tests/ui/simd/intrinsic/generic-select.rs:39:9
|
39 | simd_select(m8, x, x);
| ^^^^^^^^^^^^^^^^^^^^^
error[E0511]: invalid monomorphization of `simd_select` intrinsic: mask element type is `u32`, expected `i_`
--> ./tests/ui/simd/intrinsic/generic-select.rs:42:9
|
42 | simd_select(x, x, x);
| ^^^^^^^^^^^^^^^^^^^^
error[E0511]: invalid monomorphization of `simd_select` intrinsic: mask element type is `f32`, expected `i_`
--> ./tests/ui/simd/intrinsic/generic-select.rs:45:9
|
45 | simd_select(z, z, z);
| ^^^^^^^^^^^^^^^^^^^^
thread 'rustc' panicked at 'called `Result::unwrap()` on an `Err` value: failed while formatting fluent string `codegen_gcc_invalid_monomorphization_expected_simd`:
the fluent string has an argument `expected_ty` that was not found.
help: the arguments `found_ty`, `name` and `position` are available
', compiler/rustc_errors/src/emitter.rs:1402:84
stack backtrace:
0: 0x7fedcc783e11 - std::backtrace_rs::backtrace::libunwind::trace::h184786643c1f8146
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x7fedcc783e11 - std::backtrace_rs::backtrace::trace_unsynchronized::h10cef21dd42edd42
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x7fedcc783e11 - std::sys_common::backtrace::_print_fmt::hca8722c6f82eccd9
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys_common/backtrace.rs:65:5
3: 0x7fedcc783e11 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h4b170c65cdf95c48
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys_common/backtrace.rs:44:22
4: 0x7fedcc7e54bf - core::fmt::rt::Argument::fmt::h7e50834cab28e102
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/core/src/fmt/rt.rs:138:9
5: 0x7fedcc7e54bf - core::fmt::write::h8bd64fe81f89dd81
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/core/src/fmt/mod.rs:1094:21
6: 0x7fedcc776977 - std::io::Write::write_fmt::hc75a842b3ecac8bc
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/io/mod.rs:1714:15
7: 0x7fedcc783c25 - std::sys_common::backtrace::_print::hdb7a31bd8c54eb49
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys_common/backtrace.rs:47:5
8: 0x7fedcc783c25 - std::sys_common::backtrace::print::hbcf968a4222dc0b5
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys_common/backtrace.rs:34:9
9: 0x7fedcc7869d3 - std::panicking::default_hook::{{closure}}::h02987b13cfa1387d
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/panicking.rs:269:22
10: 0x7fedcc786764 - std::panicking::default_hook::hcb3fd44404995c49
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/panicking.rs:288:9
11: 0x7fedcb5abd6b - <rustc_driver_impl[7175fdba515aac6e]::install_ice_hook::{closure#0} as core[baaa20f768102eef]::ops::function::FnOnce<(&core[baaa20f768102eef]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
12: 0x7fedcc7871fe - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hec1e31de726d1657
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/alloc/src/boxed.rs:2007:9
13: 0x7fedcc7871fe - std::panicking::rust_panic_with_hook::h223f39091438ac61
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/panicking.rs:709:13
14: 0x7fedcc786f87 - std::panicking::begin_panic_handler::{{closure}}::h4644cfd73fc4a198
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/panicking.rs:597:13
15: 0x7fedcc784246 - std::sys_common::backtrace::__rust_end_short_backtrace::hfbaa4867b3658893
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys_common/backtrace.rs:151:18
16: 0x7fedcc786cd2 - rust_begin_unwind
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/panicking.rs:593:5
17: 0x7fedcc7e1743 - core::panicking::panic_fmt::hbd4e3abda5ea01cd
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/core/src/panicking.rs:67:14
18: 0x7fedcc7e1d63 - core::result::unwrap_failed::h3a089cd83ce6302e
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/core/src/result.rs:1651:5
19: 0x7fedcaa96fd9 - <rustc_errors[22c53a0383ffa2c9]::emitter::EmitterWriter>::emit_message_default::{closure#0}
20: 0x7fedcaa8d9c2 - <rustc_errors[22c53a0383ffa2c9]::emitter::EmitterWriter>::emit_messages_default
21: 0x7fedcaa8517a - <rustc_errors[22c53a0383ffa2c9]::emitter::EmitterWriter as rustc_errors[22c53a0383ffa2c9]::emitter::Emitter>::emit_diagnostic
22: 0x7fedcad034c8 - <rustc_errors[22c53a0383ffa2c9]::HandlerInner>::emit_diagnostic::{closure#2}
23: 0x7fedcacf14f3 - rustc_interface[e3841d12b9b221e7]::callbacks::track_diagnostic
24: 0x7fedca3ab5e2 - <rustc_errors[22c53a0383ffa2c9]::HandlerInner>::emit_diagnostic
25: 0x7fedca30970e - <rustc_errors[22c53a0383ffa2c9]::Handler>::emit_diagnostic
26: 0x7fedc9f9c7fe - <rustc_span[1e0547ff349d1bca]::ErrorGuaranteed as rustc_errors[22c53a0383ffa2c9]::diagnostic_builder::EmissionGuarantee>::diagnostic_builder_emit_producing_guarantee
27: 0x7fedbd7b8594 - rustc_session::parse::ParseSess::emit_err::h7c764fea0b35bbc2
28: 0x7fedbd6bc489 - rustc_codegen_gcc::intrinsic::simd::generic_simd_intrinsic::h655038296a9eb5e0
29: 0x7fedbd6795e7 - rustc_codegen_gcc::intrinsic::<impl rustc_codegen_ssa::traits::intrinsic::IntrinsicCallMethods for rustc_codegen_gcc::builder::Builder>::codegen_intrinsic_call::h3ca3394648f12282
30: 0x7fedbd7af6b5 - rustc_codegen_ssa::mir::intrinsic::<impl rustc_codegen_ssa::mir::FunctionCx<Bx>>::codegen_intrinsic_call::h5e2d44caa5e7f5d8
31: 0x7fedbd7a3c53 - rustc_codegen_ssa::mir::block::<impl rustc_codegen_ssa::mir::FunctionCx<Bx>>::codegen_terminator::hdaf13f128cded52e
32: 0x7fedbd79e56f - rustc_codegen_ssa::mir::codegen_mir::h3ad98a26028d240e
33: 0x7fedbd683015 - rustc_codegen_ssa::base::codegen_instance::h4de2a7fcd42b8fec
34: 0x7fedbd6b779f - <rustc_middle::mir::mono::MonoItem as rustc_codegen_ssa::mono_item::MonoItemExt>::define::h3ba430a5d5241f22
35: 0x7fedbd77aa8a - rustc_codegen_gcc::base::compile_codegen_unit::module_codegen::he6166c6882b2cbb7
36: 0x7fedbd77999e - rustc_codegen_gcc::base::compile_codegen_unit::hee038d1e76e08ed1
37: 0x7fedbd6a96fd - <rustc_codegen_gcc::GccCodegenBackend as rustc_codegen_ssa::traits::backend::ExtraBackendMethods>::compile_codegen_unit::h9454ef5ee5ef580e
38: 0x7fedbd68276d - rustc_codegen_ssa::base::codegen_crate::h1a4124ddfd8d676d
39: 0x7fedbd6a932a - <rustc_codegen_gcc::GccCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate::hfb6d3003355e12ad
40: 0x7fedcaadcbc2 - <rustc_session[ebb9057f9195e4cc]::session::Session>::time::<alloc[d1ea88cdd25af2a4]::boxed::Box<dyn core[baaa20f768102eef]::any::Any>, rustc_interface[e3841d12b9b221e7]::passes::start_codegen::{closure#0}>
41: 0x7fedcaadc73b - rustc_interface[e3841d12b9b221e7]::passes::start_codegen
42: 0x7fedcaad749d - <rustc_middle[56c503886228b671]::ty::context::GlobalCtxt>::enter::<<rustc_interface[e3841d12b9b221e7]::queries::Queries>::ongoing_codegen::{closure#0}::{closure#0}, core[baaa20f768102eef]::result::Result<alloc[d1ea88cdd25af2a4]::boxed::Box<dyn core[baaa20f768102eef]::any::Any>, rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>
43: 0x7fedcaad66cd - <rustc_interface[e3841d12b9b221e7]::queries::Queries>::ongoing_codegen
44: 0x7fedcaad57f0 - <rustc_interface[e3841d12b9b221e7]::interface::Compiler>::enter::<rustc_driver_impl[7175fdba515aac6e]::run_compiler::{closure#1}::{closure#2}, core[baaa20f768102eef]::result::Result<core[baaa20f768102eef]::option::Option<rustc_interface[e3841d12b9b221e7]::queries::Linker>, rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>
45: 0x7fedcaad2e21 - std[755122e38bdf80bb]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[e3841d12b9b221e7]::util::run_in_thread_pool_with_globals<rustc_interface[e3841d12b9b221e7]::interface::run_compiler<core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>, rustc_driver_impl[7175fdba515aac6e]::run_compiler::{closure#1}>::{closure#0}, core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>
46: 0x7fedcaad25a5 - <<std[755122e38bdf80bb]::thread::Builder>::spawn_unchecked_<rustc_interface[e3841d12b9b221e7]::util::run_in_thread_pool_with_globals<rustc_interface[e3841d12b9b221e7]::interface::run_compiler<core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>, rustc_driver_impl[7175fdba515aac6e]::run_compiler::{closure#1}>::{closure#0}, core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[baaa20f768102eef]::result::Result<(), rustc_span[1e0547ff349d1bca]::ErrorGuaranteed>>::{closure#1} as core[baaa20f768102eef]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
47: 0x7fedcc791685 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h59d6baf462325ed4
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/alloc/src/boxed.rs:1993:9
48: 0x7fedcc791685 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h4eca0dd82537346f
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/alloc/src/boxed.rs:1993:9
49: 0x7fedcc791685 - std::sys::unix::thread::Thread::new::thread_start::h38e13b8ca4256fdb
at /rustc/2d0aa57684e10f7b3d3fe740ee18d431181583ad/library/std/src/sys/unix/thread.rs:108:17
50: 0x7fedc829d44b - <unknown>
51: 0x7fedc8320e40 - <unknown>
52: 0x0 - <unknown>
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.72.0-nightly (2d0aa5768 2023-06-18) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z codegen-backend=/home/matthias/vcs/github/rustc_codegen_gcc_attempt2/rustc_codegen_gcc/target/release/librustc_codegen_gcc.so
query stack during panic:
end of query stack
error: aborting due to 3 previous errors
For more information about this error, try `rustc --explain E0511`.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels