Fri, 05 Sep 2014 16:28:02 +0200
8057611: Nashorn did not dump the JOx classes to disk when running with the -d flag
Reviewed-by: attila, sundar, hannesw
1.1 --- a/src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java Thu Sep 04 14:42:30 2014 +0200 1.2 +++ b/src/jdk/nashorn/internal/codegen/ObjectClassGenerator.java Fri Sep 05 16:28:02 2014 +0200 1.3 @@ -53,6 +53,7 @@ 1.4 import java.util.Iterator; 1.5 import java.util.LinkedList; 1.6 import java.util.List; 1.7 + 1.8 import jdk.nashorn.internal.codegen.ClassEmitter.Flag; 1.9 import jdk.nashorn.internal.codegen.types.Type; 1.10 import jdk.nashorn.internal.runtime.AccessorProperty; 1.11 @@ -308,7 +309,7 @@ 1.12 newEmptyInit(className, classEmitter); 1.13 newAllocate(className, classEmitter); 1.14 1.15 - return toByteArray(classEmitter); 1.16 + return toByteArray(className, classEmitter); 1.17 } 1.18 1.19 /** 1.20 @@ -341,7 +342,7 @@ 1.21 initWithArguments.returnVoid(); 1.22 initWithArguments.end(); 1.23 1.24 - return toByteArray(classEmitter); 1.25 + return toByteArray(className, classEmitter); 1.26 } 1.27 1.28 /** 1.29 @@ -484,15 +485,13 @@ 1.30 * @param classEmitter Open class emitter. 1.31 * @return Byte codes for the class. 1.32 */ 1.33 - private byte[] toByteArray(final ClassEmitter classEmitter) { 1.34 + private byte[] toByteArray(final String className, final ClassEmitter classEmitter) { 1.35 classEmitter.end(); 1.36 1.37 final byte[] code = classEmitter.toByteArray(); 1.38 final ScriptEnvironment env = context.getEnv(); 1.39 1.40 - if (env._print_code && env._print_code_dir == null) { 1.41 - env.getErr().println(ClassEmitter.disassemble(code)); 1.42 - } 1.43 + DumpBytecode.dumpBytecode(env, log, code, className); 1.44 1.45 if (env._verify_code) { 1.46 context.verify(code);
2.1 --- a/src/jdk/nashorn/internal/runtime/CompiledFunction.java Thu Sep 04 14:42:30 2014 +0200 2.2 +++ b/src/jdk/nashorn/internal/runtime/CompiledFunction.java Fri Sep 05 16:28:02 2014 +0200 2.3 @@ -27,7 +27,6 @@ 2.4 import static jdk.nashorn.internal.lookup.Lookup.MH; 2.5 import static jdk.nashorn.internal.runtime.UnwarrantedOptimismException.INVALID_PROGRAM_POINT; 2.6 import static jdk.nashorn.internal.runtime.UnwarrantedOptimismException.isValid; 2.7 - 2.8 import java.lang.invoke.CallSite; 2.9 import java.lang.invoke.MethodHandle; 2.10 import java.lang.invoke.MethodHandles;