summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMISelLowering.cpp
diff options
context:
space:
mode:
authorDavid Green <david.green@arm.com>2019-07-05 09:34:30 +0000
committerDavid Green <david.green@arm.com>2019-07-05 09:34:30 +0000
commitbb7e97d783efae225c97758f2ff186436ac8d86d (patch)
tree067450acb87d49989f1184d2fac9e9550406748c /llvm/lib/Target/ARM/ARMISelLowering.cpp
parent6fa850c4fe4112af7590a548e2e5ec4a641c6c44 (diff)
downloadbcm5719-llvm-bb7e97d783efae225c97758f2ff186436ac8d86d.tar.gz
bcm5719-llvm-bb7e97d783efae225c97758f2ff186436ac8d86d.zip
[ARM] MVE fp to int conversions
This adds the patterns needed for fptosi and sitofp. Differential Revision: https://reviews.llvm.org/D63729 llvm-svn: 365176
Diffstat (limited to 'llvm/lib/Target/ARM/ARMISelLowering.cpp')
-rw-r--r--llvm/lib/Target/ARM/ARMISelLowering.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp
index ea8e84d0afa..ee760eb17a6 100644
--- a/llvm/lib/Target/ARM/ARMISelLowering.cpp
+++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp
@@ -256,6 +256,13 @@ void ARMTargetLowering::addMVEVectorTypes(bool HasMVEFP) {
setOperationAction(ISD::SDIV, VT, Expand);
setOperationAction(ISD::UREM, VT, Expand);
setOperationAction(ISD::SREM, VT, Expand);
+
+ if (!HasMVEFP) {
+ setOperationAction(ISD::SINT_TO_FP, VT, Expand);
+ setOperationAction(ISD::UINT_TO_FP, VT, Expand);
+ setOperationAction(ISD::FP_TO_SINT, VT, Expand);
+ setOperationAction(ISD::FP_TO_UINT, VT, Expand);
+ }
}
const MVT FloatTypes[] = { MVT::v8f16, MVT::v4f32 };
OpenPOWER on IntegriCloud