diff options
author | Bob Wilson <bob.wilson@apple.com> | 2009-09-16 00:17:28 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@apple.com> | 2009-09-16 00:17:28 +0000 |
commit | 4ed397c141687621d83811db3fef55023e3c3623 (patch) | |
tree | 686fc145fffc9fed9a30b27539f9cc2f028f8287 /llvm/lib/Target/ARM/ARMISelLowering.cpp | |
parent | 4e465598f05972a20daf5ffc8e8a7af0212cb605 (diff) | |
download | bcm5719-llvm-4ed397c141687621d83811db3fef55023e3c3623.tar.gz bcm5719-llvm-4ed397c141687621d83811db3fef55023e3c3623.zip |
Neon does not support vector divide or remainder. Expand them.
llvm-svn: 81966
Diffstat (limited to 'llvm/lib/Target/ARM/ARMISelLowering.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/ARMISelLowering.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp index 1ac594e192c..1b24a58840a 100644 --- a/llvm/lib/Target/ARM/ARMISelLowering.cpp +++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp @@ -99,6 +99,14 @@ void ARMTargetLowering::addTypeForNEON(EVT VT, EVT PromotedLdStVT, AddPromotedToType (ISD::XOR, VT.getSimpleVT(), PromotedBitwiseVT.getSimpleVT()); } + + // Neon does not support vector divide/remainder operations. + setOperationAction(ISD::SDIV, VT.getSimpleVT(), Expand); + setOperationAction(ISD::UDIV, VT.getSimpleVT(), Expand); + setOperationAction(ISD::FDIV, VT.getSimpleVT(), Expand); + setOperationAction(ISD::SREM, VT.getSimpleVT(), Expand); + setOperationAction(ISD::UREM, VT.getSimpleVT(), Expand); + setOperationAction(ISD::FREM, VT.getSimpleVT(), Expand); } void ARMTargetLowering::addDRTypeForNEON(EVT VT) { |