[PATCH] D70867: [FPEnv] [PowerPC] Alternative lowering ppc_fp128 StrictFP Nodes to libcalls
Ulrich Weigand via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 3 08:50:49 PST 2019
uweigand added a comment.
Otherwise, this all looks good to me.
================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp:1405
+ Hi = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, { NVT, MVT::Other },
+ { N->getOperand(0), N->getOperand(1) });
+ else
----------------
Do we need to short-circuit this if the source type is already double (like below in the FP_ROUND case)?
================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp:1747
+ ReplaceValueWith(SDValue(N, 0), Expansion);
+ return SDValue();
}
----------------
I guess this isn't fully correct in the strict case: we should raise an "inexact" exception if the Lo part is nonzero. On the other hand, the whole ppc_fp128 arithmetic isn't IEEE compliant anyway (and the libcall impementations ignore exceptions AFAIK), so we probably don't care.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70867/new/
https://reviews.llvm.org/D70867
More information about the llvm-commits
mailing list