The DAG Node "SCALAR_TO_VECTOR" may be created if the type of scalar element is legal.
Added a check for scalar type before creating this node.
Added a test that fails with assertion on the current version.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Target/X86/X86ISelLowering.cpp | ||
---|---|---|
7385 ↗ | (On Diff #30345) | This seems a bit odd - if getScalarValueForVectorElement() returned a non-null value, there was already a SCALAR_TO_VECTOR or a BUILD_VECTOR there. So why would forming a SCALAR_TO_VECTOR be wrong? (I'm not saying it's not, I just don't understand why.) |
lib/Target/X86/X86ISelLowering.cpp | ||
---|---|---|
7385 ↗ | (On Diff #30345) | The pattern here is " BITCAST(v2f64 (SCALAR_TO_VECTOR (f64 Val))) to v2i64." |