[PATCH] D73749: [LegalizeTypes][X86] Add a new strategy for type legalizing f16 type that softens it to i16, but promotes to f32 around arithmetic ops.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 30 16:05:18 PST 2020


efriedma added a comment.

This makes sense, I think.



================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp:2685
+  // Convert back to FP16 as an integer.
+  EVT IVT = EVT::getIntegerVT(*DAG.getContext(), VT.getSizeInBits());
+  return DAG.getNode(ISD::FP_TO_FP16, dl, IVT, Res);
----------------
Using getIntegerVT like this is suspicious; if the original node is a vector, the promoted node should also be a vector, no?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73749/new/

https://reviews.llvm.org/D73749





More information about the llvm-commits mailing list