]> granicus.if.org Git - llvm/commitdiff
Merging r214517:
authorHal Finkel <hfinkel@anl.gov>
Tue, 9 Dec 2014 02:09:06 +0000 (02:09 +0000)
committerHal Finkel <hfinkel@anl.gov>
Tue, 9 Dec 2014 02:09:06 +0000 (02:09 +0000)
------------------------------------------------------------------------
r214517 | uweigand | 2014-08-01 14:35:58 +0000 (Fri, 01 Aug 2014) | 8 lines

[PowerPC] PR20280 - Slots for byval parameters are not immutable

Found by inspection while looking at PR20280: code would mark slots
in the parameter save area where a byval parameter is passed as
"immutable".  This is not correct since code is allowed to modify
byval parameters in place in the parameter save area.

------------------------------------------------------------------------

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_35@223736 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCISelLowering.cpp

index ba1cd69fb85fbab76fd5ecea002e85fbcdf5c6a4..7152b856b1e8b3c5aab045101de907c950281b64 100644 (file)
@@ -2690,7 +2690,7 @@ PPCTargetLowering::LowerFormalArguments_64SVR4(
       int FI;
       if (HasParameterArea ||
           ArgSize + ArgOffset > LinkageSize + Num_GPR_Regs * PtrByteSize)
-        FI = MFI->CreateFixedObject(ArgSize, ArgOffset, true);
+        FI = MFI->CreateFixedObject(ArgSize, ArgOffset, false);
       else
         FI = MFI->CreateStackObject(ArgSize, Align, false);
       SDValue FIN = DAG.getFrameIndex(FI, PtrVT);