From e4f46e4f317bf8988a2ac00e0be7216c9f7604a8 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Tue, 10 Jul 2018 00:49:45 +0000 Subject: [PATCH] [X86] Remove FloatVT from X86VectorVTInfo in X86InstrAVX512.td The only places it was used where places where VT was the same as FloatVT. So switch those uses to VT and drop it. llvm-svn: 336624 --- llvm/lib/Target/X86/X86InstrAVX512.td | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/llvm/lib/Target/X86/X86InstrAVX512.td b/llvm/lib/Target/X86/X86InstrAVX512.td index 2f381b5a..1b29c98 100644 --- a/llvm/lib/Target/X86/X86InstrAVX512.td +++ b/llvm/lib/Target/X86/X86InstrAVX512.td @@ -90,16 +90,6 @@ class X86VectorVTInfo("sse_load_f64"), ?)); - // The corresponding float type, e.g. v16f32 for v16i32 - // Note: For EltSize < 32, FloatVT is illegal and TableGen - // fails to compile, so we choose FloatVT = VT - ValueType FloatVT = !cast( - !if (!eq (!srl(EltSize,5),0), - VTName, - !if (!eq(TypeVariantName, "i"), - "v" # NumElts # "f" # EltSize, - VTName))); - ValueType IntVT = !cast( !if (!eq (!srl(EltSize,5),0), VTName, @@ -8589,17 +8579,17 @@ multiclass avx512_fp14_p opc, string OpcodeStr, SDNode OpNode, let ExeDomain = _.ExeDomain in { defm r: AVX512_maskable, EVEX, T8PD, + (_.VT (OpNode _.RC:$src))>, EVEX, T8PD, Sched<[sched]>; defm m: AVX512_maskable, EVEX, T8PD, Sched<[sched.Folded, ReadAfterLd]>; defm mb: AVX512_maskable, EVEX, T8PD, EVEX_B, Sched<[sched.Folded, ReadAfterLd]>; } @@ -8688,7 +8678,7 @@ multiclass avx512_fp28_p opc, string OpcodeStr, X86VectorVTInfo _, defm m : AVX512_maskable, Sched<[sched.Folded, ReadAfterLd]>; @@ -8696,7 +8686,7 @@ multiclass avx512_fp28_p opc, string OpcodeStr, X86VectorVTInfo _, defm mb : AVX512_maskable, EVEX_B, Sched<[sched.Folded, ReadAfterLd]>; @@ -8760,17 +8750,17 @@ multiclass avx512_sqrt_packed opc, string OpcodeStr, let ExeDomain = _.ExeDomain in { defm r: AVX512_maskable, EVEX, + (_.VT (fsqrt _.RC:$src))>, EVEX, Sched<[sched]>; defm m: AVX512_maskable, EVEX, Sched<[sched.Folded, ReadAfterLd]>; defm mb: AVX512_maskable, EVEX, EVEX_B, Sched<[sched.Folded, ReadAfterLd]>; } -- 2.7.4