From dd7b69a61fa382737f06ec36a133d6db645f4cb0 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Thu, 20 Jan 2022 12:53:12 -0800 Subject: [PATCH] [RISCV] Remove HadStdExtV and HasStdZve* Predicates from tablegen. No instructions should be using these. Everything should use HasVInstructions* Predicates. Remove them so that they can't be used by accident. --- llvm/lib/Target/RISCV/RISCV.td | 9 --------- llvm/lib/Target/RISCV/RISCVSchedRocket.td | 2 +- llvm/lib/Target/RISCV/RISCVSchedSiFive7.td | 2 +- 3 files changed, 2 insertions(+), 11 deletions(-) diff --git a/llvm/lib/Target/RISCV/RISCV.td b/llvm/lib/Target/RISCV/RISCV.td index 36c7263235ab59..7972ced08edd88 100644 --- a/llvm/lib/Target/RISCV/RISCV.td +++ b/llvm/lib/Target/RISCV/RISCV.td @@ -166,43 +166,34 @@ def FeatureStdExtZve32x "'Zve32x' (Vector Extensions for Embedded Processors " "with maximal 32 EEW)", [FeatureStdExtZvl32b]>; -def HasStdExtZve32x : Predicate<"SubTarget->hasStdExtZve32x()">, - AssemblerPredicate<(all_of FeatureStdExtZve32x), - "'Zve32x' (Vector Extensions for Embedded Processors " - "with maximal 32 EEW)">; def FeatureStdExtZve32f : SubtargetFeature<"experimental-zve32f", "HasStdExtZve32f", "true", "'Zve32f' (Vector Extensions for Embedded Processors " "with maximal 32 EEW and F extension)", [FeatureStdExtZve32x]>; -def HasStdExtZve32f : Predicate<"SubTarget->hasStdExtZve32f()">; def FeatureStdExtZve64x : SubtargetFeature<"experimental-zve64x", "HasStdExtZve64x", "true", "'Zve64x' (Vector Extensions for Embedded Processors " "with maximal 64 EEW)", [FeatureStdExtZve32x, FeatureStdExtZvl64b]>; -def HasStdExtZve64x : Predicate<"SubTarget->hasStdExtZve64x()">; def FeatureStdExtZve64f : SubtargetFeature<"experimental-zve64f", "HasStdExtZve64f", "true", "'Zve64f' (Vector Extensions for Embedded Processors " "with maximal 64 EEW and F extension)", [FeatureStdExtZve32f, FeatureStdExtZve64x]>; -def HasStdExtZve64f : Predicate<"SubTarget->hasStdExtZve64f()">; def FeatureStdExtZve64d : SubtargetFeature<"experimental-zve64d", "HasStdExtZve64d", "true", "'Zve64d' (Vector Extensions for Embedded Processors " "with maximal 64 EEW, F and D extension)", [FeatureStdExtZve64f]>; -def HasStdExtZve64d : Predicate<"SubTarget->hasStdExtZve64d()">; def FeatureStdExtV : SubtargetFeature<"experimental-v", "HasStdExtV", "true", "'V' (Vector Extension for Application Processors)", [FeatureStdExtZvl128b, FeatureStdExtZve64d, FeatureStdExtF, FeatureStdExtD]>; -def HasStdExtV : Predicate<"Subtarget->hasStdExtV()">; def HasVInstructions : Predicate<"Subtarget->hasVInstructions()">, AssemblerPredicate< diff --git a/llvm/lib/Target/RISCV/RISCVSchedRocket.td b/llvm/lib/Target/RISCV/RISCVSchedRocket.td index 4655015a9d1ec5..b907ada3a1d5af 100644 --- a/llvm/lib/Target/RISCV/RISCVSchedRocket.td +++ b/llvm/lib/Target/RISCV/RISCVSchedRocket.td @@ -17,7 +17,7 @@ def RocketModel : SchedMachineModel { let LoadLatency = 3; let MispredictPenalty = 3; let CompleteModel = false; - let UnsupportedFeatures = [HasStdExtV, HasVInstructions, HasVInstructionsI64]; + let UnsupportedFeatures = [HasVInstructions, HasVInstructionsI64]; } //===----------------------------------------------------------------------===// diff --git a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td index 3b3e2699d6b602..5672637a40cc20 100644 --- a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td +++ b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td @@ -15,7 +15,7 @@ def SiFive7Model : SchedMachineModel { let LoadLatency = 3; let MispredictPenalty = 3; let CompleteModel = 0; - let UnsupportedFeatures = [HasStdExtV]; + let UnsupportedFeatures = [HasVInstructions]; } // The SiFive7 microarchitecture has two pipelines: A and B.