summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/ARMTargetParser.cpp
diff options
context:
space:
mode:
authorMomchil Velikov <momchil.velikov@arm.com>2020-01-09 13:47:52 +0000
committerMomchil Velikov <momchil.velikov@arm.com>2020-01-09 14:03:25 +0000
commit173b711e83d7b61a46f55eb44f03ea98f69a1dd6 (patch)
tree4bd566faed42ae6fede048e4b04713c66d97db31 /llvm/lib/Support/ARMTargetParser.cpp
parent032a9393a739a1ef8c30979e2493971207c3c397 (diff)
downloadbcm5719-llvm-173b711e83d7b61a46f55eb44f03ea98f69a1dd6.tar.gz
bcm5719-llvm-173b711e83d7b61a46f55eb44f03ea98f69a1dd6.zip
[ARM][MVE] MVE-I should not be disabled by -mfpu=none
Architecturally, it's allowed to have MVE-I without an FPU, thus -mfpu=none should not disable MVE-I, or moves to/from FP-registers. This patch removes `+/-fpregs` from features unconditionally added to target feature list, depending on FPU and moves the logic to Clang driver, where the negative form (`-fpregs`) is conditionally added to the target features list for the cases of `-mfloat-abi=soft`, or `-mfpu=none` without either `+mve` or `+mve.fp`. Only the negative form is added by the driver, the positive one is derived from other features in the backend. Differential Revision: https://reviews.llvm.org/D71843
Diffstat (limited to 'llvm/lib/Support/ARMTargetParser.cpp')
-rw-r--r--llvm/lib/Support/ARMTargetParser.cpp2
1 files changed, 0 insertions, 2 deletions
diff --git a/llvm/lib/Support/ARMTargetParser.cpp b/llvm/lib/Support/ARMTargetParser.cpp
index ce5daa7fe58..f2c22fd93c8 100644
--- a/llvm/lib/Support/ARMTargetParser.cpp
+++ b/llvm/lib/Support/ARMTargetParser.cpp
@@ -174,8 +174,6 @@ bool ARM::getFPUFeatures(unsigned FPUKind, std::vector<StringRef> &Features) {
// under FPURestriction::None, which is the only FPURestriction in
// which they would be valid (since FPURestriction::SP doesn't
// exist).
-
- {"+fpregs", "-fpregs", FPUVersion::VFPV2, FPURestriction::SP_D16},
{"+vfp2", "-vfp2", FPUVersion::VFPV2, FPURestriction::D16},
{"+vfp2sp", "-vfp2sp", FPUVersion::VFPV2, FPURestriction::SP_D16},
{"+vfp3", "-vfp3", FPUVersion::VFPV3, FPURestriction::None},
OpenPOWER on IntegriCloud