forked from OSchip/llvm-project
[AVX-512] Make sure VLX is also enabled before using EVEX encoded logic ops for scalars. I missed this in r290049.
llvm-svn: 290055
This commit is contained in:
parent
1d3dcb0602
commit
2baef8f466
|
@ -4559,7 +4559,7 @@ defm : avx512_fp_logical_lowering_sizes<"VPOR", or>;
|
|||
defm : avx512_fp_logical_lowering_sizes<"VPXOR", xor>;
|
||||
defm : avx512_fp_logical_lowering_sizes<"VPANDN", X86andnp>;
|
||||
|
||||
let Predicates = [HasDQI] in {
|
||||
let Predicates = [HasVLX,HasDQI] in {
|
||||
// Use packed logical operations for scalar ops.
|
||||
def : Pat<(f64 (X86fand FR64X:$src1, FR64X:$src2)),
|
||||
(COPY_TO_REGCLASS (VANDPDZ128rr
|
||||
|
|
|
@ -2932,7 +2932,7 @@ let Predicates = [HasAVX, NoVLX_Or_NoDQI] in {
|
|||
(VANDNPDYrm VR256:$src1, addr:$src2)>;
|
||||
}
|
||||
|
||||
let Predicates = [HasAVX, NoDQI] in {
|
||||
let Predicates = [HasAVX, NoVLX_Or_NoDQI] in {
|
||||
// Use packed logical operations for scalar ops.
|
||||
def : Pat<(f64 (X86fand FR64:$src1, FR64:$src2)),
|
||||
(COPY_TO_REGCLASS (VANDPDrr
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -show-mc-encoding -mattr=+sse2 | FileCheck %s --check-prefix=SSE
|
||||
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -show-mc-encoding -mattr=+avx | FileCheck %s --check-prefix=AVX
|
||||
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -show-mc-encoding -mattr=+avx512dq | FileCheck %s --check-prefix=AVX512DQ
|
||||
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -show-mc-encoding -mattr=+avx512dq,+avx512vl | FileCheck %s --check-prefix=AVX512DQ
|
||||
|
||||
; Test that we can replace "scalar" FP-bitwise-logic with the optimal instruction.
|
||||
; Scalar x86 FP-logic instructions only exist in your imagination and/or the bowels
|
||||
|
|
Loading…
Reference in New Issue