summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Molloy <james.molloy@arm.com>2015-08-13 17:28:20 +0000
committerJames Molloy <james.molloy@arm.com>2015-08-13 17:28:20 +0000
commitc71f78f49f6c4a7406abf1402d1e456d9b958198 (patch)
tree07ae8ab0062988ffdc2653a1b16e085b3ca74dae
parent6f0a9d7e1baae51229b469ca7063e934d56f7556 (diff)
downloadbcm5719-llvm-c71f78f49f6c4a7406abf1402d1e456d9b958198.tar.gz
bcm5719-llvm-c71f78f49f6c4a7406abf1402d1e456d9b958198.zip
[ARM] Allow vmin/vmax of scalars to be emitted without UseNEONForFP.
This overrides the default to more closely resemble the hand-crafted matching logic in ISelLowering. It makes sense, as there is no VFP equivalent of vmin or vmax, to use them when they're available even if in general VFP ops should be preferred. This should be NFC. llvm-svn: 244915
-rw-r--r--llvm/lib/Target/ARM/ARMInstrNEON.td4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/ARMInstrNEON.td b/llvm/lib/Target/ARM/ARMInstrNEON.td
index 22b5547def0..889b8a97d25 100644
--- a/llvm/lib/Target/ARM/ARMInstrNEON.td
+++ b/llvm/lib/Target/ARM/ARMInstrNEON.td
@@ -6338,8 +6338,8 @@ def : N3VSMulOpPat<fmul, fsub, VFMSfd>,
Requires<[HasVFP4, UseNEONForFP, UseFusedMAC]>;
def : N2VSPat<fabs, VABSfd>;
def : N2VSPat<fneg, VNEGfd>;
-def : N3VSPat<fmaxnan, VMAXfd>;
-def : N3VSPat<fminnan, VMINfd>;
+def : N3VSPat<fmaxnan, VMAXfd>, Requires<[HasNEON]>;
+def : N3VSPat<fminnan, VMINfd>, Requires<[HasNEON]>;
def : NVCVTFIPat<fp_to_sint, VCVTf2sd>;
def : NVCVTFIPat<fp_to_uint, VCVTf2ud>;
def : NVCVTIFPat<sint_to_fp, VCVTs2fd>;
OpenPOWER on IntegriCloud