Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8024971 Fuzzing results on nashorn by Andre
  3. JDK-8047364

function f() { L1:try { return } finally { break L1 } } f() results in VerifyError

XMLWordPrintable

    • Icon: Sub-task Sub-task
    • Resolution: Duplicate
    • Icon: P3 P3
    • 8u40
    • 9
    • core-libs
    • None

      jjs -J-Djava.ext.dirs=$jdk9_dev/nashorn/dist

      jjs> function f(){ L1:try{ return }finally{break L1} }f()
      Exception in thread "main" java.lang.VerifyError: StackMapTable error: bad offset
      Exception Details:
        Location:
          jdk/nashorn/internal/scripts/Script$Recompilation$2$\^shell\_.f(Ljava/lang/Object;)Ljava/lang/Object; @0: goto
        Reason:
          Invalid stackmap specification.
        Current Frame:
          bci: @9
          flags: { }
          locals: { 'java/lang/Object' }
          stack: { }
        Bytecode:
          0000000: a700 094c 2b4d a700 03
        Exception Handler Table:
          bci [0, 3] => handler: 3
        Stackmap Table:
          same_locals_1_stack_item_frame(@3,Object[#20])
          same_frame(@9)

      at java.lang.Class.getDeclaredFields0(Native Method)
      at java.lang.Class.privateGetDeclaredFields(Class.java:2570)
      at java.lang.Class.getDeclaredField(Class.java:2055)
      at jdk.nashorn.internal.runtime.Context$ContextCodeInstaller$1$1.run(Context.java:176)
      at jdk.nashorn.internal.runtime.Context$ContextCodeInstaller$1$1.run(Context.java:171)
      at java.security.AccessController.doPrivileged(Native Method)
      at jdk.nashorn.internal.runtime.Context$ContextCodeInstaller$1.accept(Context.java:171)
      at jdk.nashorn.internal.runtime.Context$ContextCodeInstaller$1.accept(Context.java:167)
      at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
      at java.util.Iterator.forEachRemaining(Iterator.java:116)
      at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
      at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
      at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
      at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
      at java.util.concurrent.ForkJoinTask.doInvoke(ForkJoinTask.java:400)
      at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:728)
      at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:159)
      at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:173)
      at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
      at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
      at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:583)
      at jdk.nashorn.internal.runtime.Context$ContextCodeInstaller.initialize(Context.java:166)
      at jdk.nashorn.internal.codegen.CompilationPhase$12.transform(CompilationPhase.java:526)
      at jdk.nashorn.internal.codegen.CompilationPhase.apply(CompilationPhase.java:685)
      at jdk.nashorn.internal.codegen.Compiler.compile(Compiler.java:506)
      at jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.compileTypeSpecialization(RecompilableScriptFunctionData.java:420)
      at jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getBest(RecompilableScriptFunctionData.java:560)
      at jdk.nashorn.internal.runtime.ScriptFunctionData.getBestInvoker(ScriptFunctionData.java:229)
      at jdk.nashorn.internal.runtime.ScriptFunction.findCallMethod(ScriptFunction.java:546)
      at jdk.nashorn.internal.runtime.ScriptObject.lookup(ScriptObject.java:1791)
      at jdk.nashorn.internal.runtime.linker.NashornLinker.getGuardedInvocation(NashornLinker.java:100)
      at jdk.nashorn.internal.runtime.linker.NashornLinker.getGuardedInvocation(NashornLinker.java:94)
      at jdk.internal.dynalink.support.CompositeTypeBasedGuardingDynamicLinker.getGuardedInvocation(CompositeTypeBasedGuardingDynamicLinker.java:176)
      at jdk.internal.dynalink.support.CompositeGuardingDynamicLinker.getGuardedInvocation(CompositeGuardingDynamicLinker.java:124)
      at jdk.internal.dynalink.support.LinkerServicesImpl.getGuardedInvocation(LinkerServicesImpl.java:149)
      at jdk.internal.dynalink.DynamicLinker.relink(DynamicLinker.java:233)
      at jdk.nashorn.internal.scripts.Script$1$\^shell\_.:program(<shell>:1)
      at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:567)
      at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:221)
      at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:374)
      at jdk.nashorn.internal.runtime.Context.eval(Context.java:620)
      at jdk.nashorn.tools.Shell.readEvalPrint(Shell.java:448)
      at jdk.nashorn.tools.Shell.run(Shell.java:158)
      at jdk.nashorn.tools.Shell.main(Shell.java:133)
      at jdk.nashorn.tools.Shell.main(Shell.java:112)

            attila Attila Szegedi
            sundar Sundararajan Athijegannathan
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: