mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-14 22:38:03 +00:00
Allow SCALAR_TO_VECTOR to be custom lowered.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26867 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ce87215131
commit
4d3abee618
@ -783,9 +783,18 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
|
||||
default: assert(0 && "This action is not supported yet!");
|
||||
case TargetLowering::Legal:
|
||||
break;
|
||||
case TargetLowering::Custom:
|
||||
Tmp3 = TLI.LowerOperation(Result, DAG);
|
||||
if (Tmp3.Val) {
|
||||
Result = Tmp3;
|
||||
break;
|
||||
}
|
||||
// FALLTHROUGH
|
||||
case TargetLowering::Expand: {
|
||||
// If the target doesn't support this, store the value to a temporary
|
||||
// stack slot, then EXTLOAD the vector back out.
|
||||
// TODO: If a target doesn't support this, create a stack slot for the
|
||||
// whole vector, then store into it, then load the whole vector.
|
||||
SDOperand StackPtr =
|
||||
CreateStackTemporary(Node->getOperand(0).getValueType());
|
||||
SDOperand Ch = DAG.getNode(ISD::STORE, MVT::Other, DAG.getEntryNode(),
|
||||
|
Loading…
x
Reference in New Issue
Block a user