[llvm] [IR] Add `llvm.sincos` intrinsic (PR #109825)
Sander de Smalen via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 28 01:58:47 PDT 2024
================
@@ -4448,6 +4470,8 @@ void DAGTypeLegalizer::WidenVectorResult(SDNode *N, unsigned ResNo) {
if (!TLI.isOperationLegalOrCustomOrPromote(N->getOpcode(), WideVecVT) &&
TLI.isOperationExpand(N->getOpcode(), VT.getScalarType())) {
Res = DAG.UnrollVectorOp(N, WideVecVT.getVectorNumElements());
+ if (N->getNumValues() == 2)
----------------
sdesmalen-arm wrote:
For operations that return > 2 values (which I appreciate you might not be able to test), this doesn't do the right thing now. If you change this condition to `> 1`, then the code in `ReplaceOtherWidenResult` should handle the case the operation has more results. This currently fails the assert, but I think can be implemented with a loop for the other values.
https://github.com/llvm/llvm-project/pull/109825
More information about the llvm-commits
mailing list