# HG changeset patch # User Gilles Duboscq # Date 1354037102 -3600 # Node ID aee0e8fa81744f8f7728e06db347586d5f141424 # Parent 6cbaae52bab9e1da00987f94cf8a7944b919f035 Make frame omission optional diff -r 6cbaae52bab9 -r aee0e8fa8174 graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java --- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java Tue Nov 27 17:33:52 2012 +0100 +++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java Tue Nov 27 18:25:02 2012 +0100 @@ -231,7 +231,7 @@ // - has no callee-saved registers // - has no incoming arguments passed on the stack // - has no instructions with debug info - boolean canOmitFrame = + boolean canOmitFrame = GraalOptions.CanOmitFrame && frameMap.frameSize() == frameMap.initialFrameSize && frameMap.registerConfig.getCalleeSaveLayout().registers.length == 0 && !lir.hasArgInCallerFrame() && diff -r 6cbaae52bab9 -r aee0e8fa8174 graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java --- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Tue Nov 27 17:33:52 2012 +0100 +++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Tue Nov 27 18:25:02 2012 +0100 @@ -170,6 +170,7 @@ public static boolean GenAssertionCode = ____; public static boolean AlignCallsForPatching = true; public static boolean ResolveClassBeforeStaticInvoke = true; + public static boolean CanOmitFrame = true; // Translating tableswitch instructions public static int SequentialSwitchLimit = 4;