Skip to content

Consider renaming the avx512gfni feature to just gfni #100752

Closed

Description

@calebzulawski

While GFNI has (optional) AVX-512 instructions, there is at least one microarchitecture (Tremont) that has GFNI without AVX-512.

This is further confirmed by running:

rustc +nightly -Ctarget-feature=+avx512gfni --print cfg | grep target_feature
target_feature="avx512gfni"
target_feature="cmpxchg16b"
target_feature="fxsr"
target_feature="llvm14-builtins-abi"
target_feature="sse"
target_feature="sse2"
target_feature="sse3"
target_feature="ssse3"

Unlike other AVX-512 features, avx512f is not enabled, so I'm not sure this should be considered an AVX-512 feature.

Activity

  1. calebzulawski commented on Aug 19, 2022

    @calebzulawski
    MemberAuthor

    The same goes for avx512vaes to vaes, which seems to be implemented on Zen 3 without AVX-512.

  2. workingjubilee commented on Aug 27, 2022

    @workingjubilee
    Member

    This.. seems incorrect. The versions that don't build off and include AVX512 should be separate features, if I remember the ad copy around these.

  3. calebzulawski commented on Aug 27, 2022

    @calebzulawski
    MemberAuthor

    I'm not sure if you mean my suggestion is incorrect, or the existing feature names, but rustc certainly isn't the first to be confused by the new convention used here: https://community.intel.com/t5/Intel-ISA-Extensions/GFNI-documentation-anomaly/td-p/1153193

  4. workingjubilee commented on Aug 28, 2022

    @workingjubilee
    Member

    I am mostly expressing bafflement at the current situation.

  5. SchrodingerZhu commented on Oct 20, 2022

    @SchrodingerZhu

    Please also see rust-lang/stdarch#1343

    On AMD platform, VAES (I doubt VPCLMULQDQ) codegen would suffer from the similar issue mentioned here.

  6. added a commit that references this issue on Nov 16, 2022
  7. added 2 commits that reference this issue on Nov 16, 2022
  8. added a commit that references this issue on Jan 6, 2023
  9. added a commit that references this issue on May 15, 2023
    ce5919f
  10. added a commit that references this issue on Jun 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-target-featureArea: Enabling/disabling target features like AVX, Neon, etc.C-bugCategory: This is a bug.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions