[PATCH] D48809: [FPEnv] Split double width StrictFP vector operations as needed

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jul 1 22:55:49 PDT 2018


craig.topper added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp:1082
+
+  EVT ValueVTs[] = {OpsLo[1].getValueType(), MVT::Other};
+  Lo = DAG.getNode(N->getOpcode(), dl, ValueVTs, OpsLo);
----------------
craig.topper wrote:
> You can use DAG.GetSplitDestVTs(N->getValueType(0)) to get the high and lo VTs. That's the correct way to do this.
Though if we don't want to assume the VT of operand 1 matches the destination VT, then its also wrong to call GetSplitVector on the input operands. You would need to call getTypeAction on that VT and ensure that it's also TypeSplitVector and if its not call DAG.SplitVector instead.


Repository:
  rL LLVM

https://reviews.llvm.org/D48809





More information about the llvm-commits mailing list