mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-21 20:12:56 +02:00
Fix some bugs andrew noticed legalizing memset for alpha
llvm-svn: 19969
This commit is contained in:
parent
26d4a4b2d2
commit
9cf60e3459
@ -710,17 +710,17 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
|
|||||||
case ISD::MEMSET:
|
case ISD::MEMSET:
|
||||||
case ISD::MEMCPY:
|
case ISD::MEMCPY:
|
||||||
case ISD::MEMMOVE: {
|
case ISD::MEMMOVE: {
|
||||||
Tmp1 = LegalizeOp(Node->getOperand(0)); // Function
|
Tmp1 = LegalizeOp(Node->getOperand(0)); // Chain
|
||||||
Tmp2 = LegalizeOp(Node->getOperand(1)); // Pointer
|
Tmp2 = LegalizeOp(Node->getOperand(1)); // Pointer
|
||||||
|
|
||||||
if (Node->getOpcode() == ISD::MEMSET) { // memset = ubyte
|
if (Node->getOpcode() == ISD::MEMSET) { // memset = ubyte
|
||||||
switch (getTypeAction(Node->getOperand(2).getValueType())) {
|
switch (getTypeAction(Node->getOperand(2).getValueType())) {
|
||||||
case Expand: assert(0 && "Cannot expand a byte!");
|
case Expand: assert(0 && "Cannot expand a byte!");
|
||||||
case Legal:
|
case Legal:
|
||||||
Tmp3 = LegalizeOp(Node->getOperand(1));
|
Tmp3 = LegalizeOp(Node->getOperand(2));
|
||||||
break;
|
break;
|
||||||
case Promote:
|
case Promote:
|
||||||
Tmp3 = PromoteOp(Node->getOperand(1));
|
Tmp3 = PromoteOp(Node->getOperand(2));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user