[llvm-commits] Buggy SelectionDAG binop vector widening

Dale Johannesen dalej at apple.com
Thu Jun 3 11:12:59 PDT 2010

On Jun 3, 2010, at 6:27 AMPDT, Visa Putkinen wrote:

> The function responsible for widening vector binary operation nodes in
> SelectionDAGs (DAGTypeLegalizer::WidenVecRes_Binary in
> lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp, r105388) returns
> incorrect results for many vector lengths and even triggers asserts on
> lengths 9 and 13. I didn't find a bug report about this bug.
> +        NextVT = EVT::getVectorVT(*DAG.getContext(), WidenEltVT,  
> NextSize);
> +      } while (!TLI.isTypeLegal(NextVT));

This should be isTypeSynthesizable, not isTypeLegal.  There are  
probably other places in here where that's also true.

More information about the llvm-commits mailing list