summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMISelLowering.cpp
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2007-08-31 04:03:46 +0000
committerDale Johannesen <dalej@apple.com>2007-08-31 04:03:46 +0000
commit3cf889f75ef6e4ae454ddb72fdf7bdeb89193f0a (patch)
treee391294683a195e09e0c3317ea7574dfcadcad00 /llvm/lib/Target/ARM/ARMISelLowering.cpp
parent7e2e459c48169aebddfc82b4573a4ee288872e02 (diff)
downloadbcm5719-llvm-3cf889f75ef6e4ae454ddb72fdf7bdeb89193f0a.tar.gz
bcm5719-llvm-3cf889f75ef6e4ae454ddb72fdf7bdeb89193f0a.zip
Enhance APFloat to retain bits of NaNs (fixes oggenc).
Use APFloat interfaces for more references, mostly of ConstantFPSDNode. llvm-svn: 41632
Diffstat (limited to 'llvm/lib/Target/ARM/ARMISelLowering.cpp')
-rw-r--r--llvm/lib/Target/ARM/ARMISelLowering.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp
index a274c14eabf..d6ca1481395 100644
--- a/llvm/lib/Target/ARM/ARMISelLowering.cpp
+++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp
@@ -1033,14 +1033,14 @@ ARMTargetLowering::LowerFORMAL_ARGUMENTS(SDOperand Op, SelectionDAG &DAG) {
/// isFloatingPointZero - Return true if this is +0.0.
static bool isFloatingPointZero(SDOperand Op) {
if (ConstantFPSDNode *CFP = dyn_cast<ConstantFPSDNode>(Op))
- return CFP->isExactlyValue(0.0);
+ return CFP->getValueAPF().isPosZero();
else if (ISD::isEXTLoad(Op.Val) || ISD::isNON_EXTLoad(Op.Val)) {
// Maybe this has already been legalized into the constant pool?
if (Op.getOperand(1).getOpcode() == ARMISD::Wrapper) {
SDOperand WrapperOp = Op.getOperand(1).getOperand(0);
if (ConstantPoolSDNode *CP = dyn_cast<ConstantPoolSDNode>(WrapperOp))
if (ConstantFP *CFP = dyn_cast<ConstantFP>(CP->getConstVal()))
- return CFP->isExactlyValue(0.0);
+ return CFP->getValueAPF().isPosZero();
}
}
return false;
OpenPOWER on IntegriCloud