changeset 883:a43d59738770

8044816: On-demand compiled top-level program doesn't need :createProgramFunction Reviewed-by: jlaskey, lagergren, sundar
author attila
date Thu, 05 Jun 2014 12:16:09 +0200
parents 353483cfe8c6
children 4a47b7cfecdf
files src/jdk/nashorn/internal/codegen/CodeGenerator.java
diffstat 1 files changed, 1 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/jdk/nashorn/internal/codegen/CodeGenerator.java	Thu Jun 05 12:15:45 2014 +0200
+++ b/src/jdk/nashorn/internal/codegen/CodeGenerator.java	Thu Jun 05 12:16:09 2014 +0200
@@ -4312,8 +4312,7 @@
 
         assert data != null : functionNode.getName() + " has no data";
 
-        final FunctionNode parentFn = lc.getParentFunction(functionNode);
-        if (parentFn == null && functionNode.isProgram()) {
+        if (functionNode.isProgram() && !compiler.isOnDemandCompilation()) {
             final CompileUnit fnUnit = functionNode.getCompileUnit();
             final MethodEmitter createFunction = fnUnit.getClassEmitter().method(
                     EnumSet.of(Flag.PUBLIC, Flag.STATIC), CREATE_PROGRAM_FUNCTION.symbolName(),