Mercurial > hg > truffle
changeset 8402:c0db24536e97
Remove flag and optimization for object method arguments in the register allocator. Needs more investigation of GC impact on HotSpot
author | Christian Wimmer <christian.wimmer@oracle.com> |
---|---|
date | Wed, 20 Mar 2013 08:22:35 -0700 |
parents | 701290361dad |
children | a007cbe2be30 |
files | graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java |
diffstat | 2 files changed, 5 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java Wed Mar 20 14:01:43 2013 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java Wed Mar 20 08:22:35 2013 -0700 @@ -1073,7 +1073,11 @@ } private static boolean optimizeMethodArgument(Value value) { - return isStackSlot(value) && asStackSlot(value).isInCallerFrame() && (GraalOptions.IncomingMethodArgumentsGCSafe || value.getKind() != Kind.Object); + /* + * Object method arguments that are passed on the stack are currently not optimized because + * this requires that the runtime visits method arguments during stack walking. + */ + return isStackSlot(value) && asStackSlot(value).isInCallerFrame() && value.getKind() != Kind.Object; } /**
--- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Wed Mar 20 14:01:43 2013 +0100 +++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Wed Mar 20 08:22:35 2013 -0700 @@ -211,12 +211,6 @@ public static boolean IntrinsifyAESMethods = true; /** - * Method arguments that are passed on the stack can be optimized by the register allocator to avoid spilling - * and reloading. However, this requires that the runtime visits method arguments during stack walking. - */ - public static boolean IncomingMethodArgumentsGCSafe = true; - - /** * Counts the various paths taken through snippets. */ public static boolean SnippetCounters = false;