[all-commits] [llvm/llvm-project] 241940: [X86][RFC] Add new option `-m[no-]evex512` to disa...
Phoebe Wang via All-commits
all-commits at lists.llvm.org
Fri Sep 8 07:47:41 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 24194090e17b599522a080d502ab0f68125d53dd
https://github.com/llvm/llvm-project/commit/24194090e17b599522a080d502ab0f68125d53dd
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2023-09-08 (Fri, 08 Sep 2023)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/BuiltinsX86.def
M clang/include/clang/Driver/Options.td
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Headers/avx512bf16intrin.h
M clang/lib/Headers/avx512bitalgintrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512cdintrin.h
M clang/lib/Headers/avx512dqintrin.h
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512fp16intrin.h
M clang/lib/Headers/avx512ifmaintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vbmiintrin.h
M clang/lib/Headers/avx512vnniintrin.h
M clang/lib/Headers/avx512vp2intersectintrin.h
M clang/lib/Headers/avx512vpopcntdqintrin.h
M clang/lib/Headers/gfniintrin.h
M clang/lib/Headers/vaesintrin.h
A clang/test/CodeGen/X86/avx512-error.c
M clang/test/CodeGen/attr-cpuspecific.c
M clang/test/CodeGen/attr-target-x86.c
M clang/test/CodeGen/regcall2.c
M clang/test/CodeGen/target-avx-abi-diag.c
M clang/test/Driver/x86-target-features.c
M clang/test/Preprocessor/x86_target_features.c
M llvm/include/llvm/TargetParser/X86TargetParser.def
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86InstrInfo.td
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/test/CodeGen/X86/avx512bwvl-arith.ll
M llvm/test/CodeGen/X86/avx512vl-arith.ll
Log Message:
-----------
[X86][RFC] Add new option `-m[no-]evex512` to disable ZMM and 64-bit mask instructions for AVX512 features
This is an alternative of D157485 and a pre-feature to support AVX10.
AVX10 Architecture Specification: https://cdrdv2.intel.com/v1/dl/getContent/784267
AVX10 Technical Paper: https://cdrdv2.intel.com/v1/dl/getContent/784343
RFC: https://discourse.llvm.org/t/rfc-design-for-avx10-feature-support/72661
Based on the feedbacks from LLVM and GCC community, we have agreed to
start from supporting `-m[no-]evex512` on existing AVX512 features.
The option `-mno-evex512` can be used with `-mavx512xxx` to build
binaries that can run on both legacy AVX512 targets and AVX10-256.
There're still arguments about what's the expected behavior when this
option as well as `-mavx512xxx` used together with `-mavx10.1-256`. We
decided to defer the support of `-mavx10.1` after we made consensus.
Or furthermore, we start from supporting AVX10.2 and not providing any
AVX10.1 options.
Reviewed By: RKSimon, skan
Differential Revision: https://reviews.llvm.org/D159250
More information about the All-commits
mailing list