i1 loads should also be from the low byte of the argument word.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21077 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman 2005-04-04 09:09:00 +00:00
parent e584668f04
commit c3e2db407e

View File

@ -173,7 +173,7 @@ PPC32TargetLowering::LowerArguments(Function &F, SelectionDAG &DAG) {
// that we ran out of physical registers of the appropriate type // that we ran out of physical registers of the appropriate type
if (needsLoad) { if (needsLoad) {
unsigned SubregOffset = 0; unsigned SubregOffset = 0;
if (ObjectVT == MVT::i8) SubregOffset = 3; if (ObjectVT == MVT::i8 || ObjectVT == MVT::i1) SubregOffset = 3;
if (ObjectVT == MVT::i16) SubregOffset = 2; if (ObjectVT == MVT::i16) SubregOffset = 2;
int FI = MFI->CreateFixedObject(ObjSize, ArgOffset); int FI = MFI->CreateFixedObject(ObjSize, ArgOffset);
SDOperand FIN = DAG.getFrameIndex(FI, MVT::i32); SDOperand FIN = DAG.getFrameIndex(FI, MVT::i32);