diff options
author | Phoebe Wang <phoebe.wang@intel.com> | 2023-11-10 15:21:05 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-10 15:21:05 +0800 |
commit | f229ba4e8d6bb24622b2d41b3c89585cb9005d8d (patch) | |
tree | ecbaa09ea99b77f93fb7bdabcb2570e8b2212338 /flang/lib/Frontend/CompilerInvocation.cpp | |
parent | 6343ee7292f75cbd331510cb7fbef265d775083c (diff) | |
download | llvm-f229ba4e8d6bb24622b2d41b3c89585cb9005d8d.zip llvm-f229ba4e8d6bb24622b2d41b3c89585cb9005d8d.tar.gz llvm-f229ba4e8d6bb24622b2d41b3c89585cb9005d8d.tar.bz2 |
[X86][AVX10] Permit AVX512 options/features used together with AVX10 (#71318)
This patch relaxes the driver logic to permit combinations between
AVX512 and AVX10 options and makes sure we have a unified behavior
between options and features combination.
Here are rules we are following when handle these combinations:
1. evex512 can only be used for avx512xxx options/features. It will be
ignored if used without them;
2. avx512xxx and avx10.xxx are options in two worlds. Avoid to use them
together in any case. It will enable a common super set when they are
used together. E.g., "-mavx512f -mavx10.1-256" euqals "-mavx10.1-512".
Compiler emits warnings when user using combinations like "-mavx512f
-mavx10.1-256" in case they won't get unexpected result silently.
Function target feature attribute follows the same rule now. We have to
add "no-evex512" feature for intrinsics shared between AVX512 and AVX10.
We also add "no-evex512" for early ISAs like AVX etc., because some of
them are called by AVX512 intrinsics.
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions