changeset 22654:a215c16882e0

[SPARC] Add spillslots for first six outgoing parameters
author Stefan Anzinger <stefan.anzinger@oracle.com>
date Thu, 01 Oct 2015 11:28:01 +0200
parents 24aa7495fec9
children 8ed4037e8286
files jvmci/jdk.internal.jvmci.hotspot.sparc/src/jdk/internal/jvmci/hotspot/sparc/SPARCHotSpotRegisterConfig.java
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/jvmci/jdk.internal.jvmci.hotspot.sparc/src/jdk/internal/jvmci/hotspot/sparc/SPARCHotSpotRegisterConfig.java	Fri Oct 02 06:21:31 2015 -0700
+++ b/jvmci/jdk.internal.jvmci.hotspot.sparc/src/jdk/internal/jvmci/hotspot/sparc/SPARCHotSpotRegisterConfig.java	Thu Oct 01 11:28:01 2015 +0200
@@ -353,7 +353,9 @@
 
         JavaKind returnKind = returnType == null ? JavaKind.Void : returnType.getJavaKind();
         AllocatableValue returnLocation = returnKind == JavaKind.Void ? Value.ILLEGAL : getReturnRegister(returnKind, type).asValue(target.getLIRKind(returnKind.getStackKind()));
-        return new CallingConvention(currentStackOffset, returnLocation, locations);
+        // Space where callee may spill outgoing parameters o0...o5
+        int lowerOutgoingSpace = Math.min(locations.length, 6) * target.wordSize;
+        return new CallingConvention(currentStackOffset + lowerOutgoingSpace, returnLocation, locations);
     }
 
     private static int roundUp(int number, int mod) {