Skip to content

Remove avx512dq and avx512vl implication for avx512fp16 #140002

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sayantn
Copy link
Contributor

@sayantn sayantn commented Apr 18, 2025

According to Intel, avx512fp16 requires only avx512bw, but LLVM also enables avx512vl and avx512dq when avx512fp16 is active. This is relic code, and will be fixed in LLVM soon. We should remove this from Rust too asap, especially before the stabilization of AVX512

Related:

@rustbot label O-x86_64 O-x86_32 A-SIMD A-target-feature T-compiler
r? @Amanieu

@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 Apr 18, 2025
@rustbot

This comment was marked as resolved.

@rustbot rustbot added A-SIMD Area: SIMD (Single Instruction Multiple Data) A-target-feature Area: Enabling/disabling target features like AVX, Neon, etc. O-x86_32 Target: x86 processors, 32 bit (like i686-*) (IA-32) O-x86_64 Target: x86-64 processors (like x86_64-*) (also known as amd64 and x64) labels Apr 18, 2025
@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] build_script_build test:false 0.193
[RUSTC-TIMING] cc test:false 0.541
   Compiling compiler_builtins v0.1.153
[RUSTC-TIMING] build_script_build test:false 0.301
error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:1555:39
     |
1555 |     _mm_mask_add_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:1606:39
     |
1606 |     _mm_mask_add_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:1867:39
     |
1867 |     _mm_mask_sub_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:1918:39
     |
1918 |     _mm_mask_sub_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2179:39
     |
2179 |     _mm_mask_mul_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2230:39
     |
2230 |     _mm_mask_mul_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2491:39
     |
2491 |     _mm_mask_div_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2542:39
     |
2542 |     _mm_mask_div_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2797:22
     |
2797 |     _mm_mask_mul_sch(_mm_undefined_ph(), 0xff, a, b)
     |                      ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2825:22
     |
2825 |     _mm_mask_mul_sch(_mm_setzero_ph(), k, a, b)
     |                      ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2849:40
     |
2849 |     _mm_mask_mul_round_sch::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                        ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:2914:40
     |
2914 |     _mm_mask_mul_round_sch::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                        ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:3448:23
     |
3448 |     _mm_mask_cmul_sch(_mm_undefined_ph(), 0xff, a, b)
     |                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:3476:23
     |
3476 |     _mm_mask_cmul_sch(_mm_setzero_ph(), k, a, b)
     |                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:3499:41
     |
3499 |     _mm_mask_cmul_round_sch::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                         ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:3564:41
     |
3564 |     _mm_mask_cmul_round_sch::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                         ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:7777:21
     |
7777 |     _mm_mask_rcp_sh(_mm_undefined_ph(), 0xff, a, b)
     |                     ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:7805:21
     |
7805 |     _mm_mask_rcp_sh(_mm_setzero_ph(), k, a, b)
     |                     ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:7942:23
     |
7942 |     _mm_mask_rsqrt_sh(_mm_undefined_ph(), 0xff, a, b)
     |                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:7970:23
     |
7970 |     _mm_mask_rsqrt_sh(_mm_setzero_ph(), k, a, b)
     |                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:8164:22
     |
8164 |     _mm_mask_sqrt_sh(_mm_undefined_ph(), 0xff, a, b)
     |                      ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:8190:22
     |
8190 |     _mm_mask_sqrt_sh(_mm_setzero_ph(), k, a, b)
     |                      ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:8212:40
     |
8212 |     _mm_mask_sqrt_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
     |                                        ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:8267:40
     |
8267 |     _mm_mask_sqrt_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
     |                                        ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9019:24
     |
9019 |     _mm_mask_getexp_sh(_mm_undefined_ph(), 0xff, a, b)
     |                        ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9049:24
     |
9049 |     _mm_mask_getexp_sh(_mm_setzero_ph(), k, a, b)
     |                        ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9066:37
     |
9066 |     _mm_mask_getexp_round_sh::<SAE>(_mm_undefined_ph(), 0xff, a, b)
     |                                     ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9107:37
     |
9107 |     _mm_mask_getexp_round_sh::<SAE>(_mm_setzero_ph(), k, a, b)
     |                                     ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9580:39
     |
9580 |     _mm_mask_getmant_sh::<NORM, SIGN>(_mm_undefined_ph(), 0xff, a, b)
     |                                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9657:39
     |
9657 |     _mm_mask_getmant_sh::<NORM, SIGN>(_mm_setzero_ph(), k, a, b)
     |                                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9698:50
     |
9698 |     _mm_mask_getmant_round_sh::<NORM, SIGN, SAE>(_mm_undefined_ph(), 0xff, a, b)
     |                                                  ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
    --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:9785:50
     |
9785 |     _mm_mask_getmant_round_sh::<NORM, SIGN, SAE>(_mm_setzero_ph(), k, a, b)
     |                                                  ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
     |
     = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10106:36
      |
10106 |     _mm_mask_roundscale_sh::<IMM8>(_mm_undefined_ph(), 0xff, a, b)
      |                                    ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10157:36
      |
10157 |     _mm_mask_roundscale_sh::<IMM8>(_mm_setzero_ph(), k, a, b)
      |                                    ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10183:47
      |
10183 |     _mm_mask_roundscale_round_sh::<IMM8, SAE>(_mm_undefined_ph(), 0xff, a, b)
      |                                               ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10246:47
      |
10246 |     _mm_mask_roundscale_round_sh::<IMM8, SAE>(_mm_setzero_ph(), k, a, b)
      |                                               ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10444:24
      |
10444 |     _mm_mask_scalef_sh(_mm_undefined_ph(), 0xff, a, b)
      |                        ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10470:24
      |
10470 |     _mm_mask_scalef_sh(_mm_setzero_ph(), k, a, b)
      |                        ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10493:42
      |
10493 |     _mm_mask_scalef_round_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
      |                                          ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10550:42
      |
10550 |     _mm_mask_scalef_round_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
      |                                          ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10867:32
      |
10867 |     _mm_mask_reduce_sh::<IMM8>(_mm_undefined_ph(), 0xff, a, b)
      |                                ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10920:32
      |
10920 |     _mm_mask_reduce_sh::<IMM8>(_mm_setzero_ph(), k, a, b)
      |                                ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:10946:43
      |
10946 |     _mm_mask_reduce_round_sh::<IMM8, SAE>(_mm_undefined_ph(), 0xff, a, b)
      |                                           ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:11011:43
      |
11011 |     _mm_mask_reduce_round_sh::<IMM8, SAE>(_mm_setzero_ph(), k, a, b)
      |                                           ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12055:29
      |
12055 |     _mm512_mask_cvtepi32_ph(_mm256_setzero_ph(), k, a)
      |                             ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12130:47
      |
12130 |     _mm512_mask_cvt_roundepi32_ph::<ROUNDING>(_mm256_setzero_ph(), k, a)
      |                                               ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12280:29
      |
12280 |     _mm512_mask_cvtepu32_ph(_mm256_setzero_ph(), k, a)
      |                             ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12355:47
      |
12355 |     _mm512_mask_cvt_roundepu32_ph::<ROUNDING>(_mm256_setzero_ph(), k, a)
      |                                               ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12506:29
      |
12506 |     _mm512_mask_cvtepi64_ph(_mm_setzero_ph(), k, a)
      |                             ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12581:47
      |
12581 |     _mm512_mask_cvt_roundepi64_ph::<ROUNDING>(_mm_setzero_ph(), k, a)
      |                                               ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12694:29
      |
12694 |     _mm512_mask_cvtepu64_ph(_mm_setzero_ph(), k, a)
      |                             ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12769:47
      |
12769 |     _mm512_mask_cvt_roundepu64_ph::<ROUNDING>(_mm_setzero_ph(), k, a)
      |                                               ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12857:27
      |
12857 |     _mm512_mask_cvtxps_ph(_mm256_setzero_ph(), 0xffff, a)
      |                           ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12883:27
      |
12883 |     _mm512_mask_cvtxps_ph(_mm256_setzero_ph(), k, a)
      |                           ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12905:45
      |
12905 |     _mm512_mask_cvtx_roundps_ph::<ROUNDING>(_mm256_setzero_ph(), 0xffff, a)
      |                                             ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm256_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12957:45
      |
12957 |     _mm512_mask_cvtx_roundps_ph::<ROUNDING>(_mm256_setzero_ph(), k, a)
      |                                             ^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12970:23
      |
12970 |     _mm_mask_cvtss_sh(_mm_undefined_ph(), 0xff, a, b)
      |                       ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:12998:23
      |
12998 |     _mm_mask_cvtss_sh(_mm_setzero_ph(), k, a, b)
      |                       ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_undefined_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:13021:41
      |
13021 |     _mm_mask_cvt_roundss_sh::<ROUNDING>(_mm_undefined_ph(), 0xff, a, b)
      |                                         ^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:13080:41
      |
13080 |     _mm_mask_cvt_roundss_sh::<ROUNDING>(_mm_setzero_ph(), k, a, b)
      |                                         ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:13168:26
      |
13168 |     _mm512_mask_cvtpd_ph(_mm_setzero_ph(), 0xff, a)
      |                          ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

error[E0133]: call to function `_mm_setzero_ph` with `#[target_feature]` is unsafe and requires unsafe function or block
     --> library/core/src/../../stdarch/crates/core_arch/src/x86/avx512fp16.rs:13194:26
      |
13194 |     _mm512_mask_cvtpd_ph(_mm_setzero_ph(), k, a)
      |                          ^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
      |
      = help: in order for the call to be safe, the context requires the following additional target feature: avx512vl

@sayantn
Copy link
Contributor Author

sayantn commented Apr 18, 2025

So, this requires a fair amount of fixes in stdarch. I will send the PR soon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-SIMD Area: SIMD (Single Instruction Multiple Data) A-target-feature Area: Enabling/disabling target features like AVX, Neon, etc. O-x86_32 Target: x86 processors, 32 bit (like i686-*) (IA-32) O-x86_64 Target: x86-64 processors (like x86_64-*) (also known as amd64 and x64) 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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants