Skip to content

Instantly share code, notes, and snippets.

@bjfish
Created March 27, 2015 23:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bjfish/454bee203e25491c8377 to your computer and use it in GitHub Desktop.
Save bjfish/454bee203e25491c8377 to your computer and use it in GitHub Desktop.
Array#pack error
[truffle] opt fail go:rx.rb:1192 |Reason com.oracle.graal.nodes.util.GraphUtil$2: Frame escapes at: 83305|MethodCallTarget#HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>
properties:{invokeKind=Special, targetMethod=HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>, stamp=void, returnType=HotSpotType<Lorg/jruby/truffle/runtime/core/RubyString;, resolved>}
arguments: [83299|Const(ArrayNodesFactory.PackNodeFactory.PackRubyArrayRubyString2Node@367287701), 83256|NewFrame, 83348|Pi, 83361|Pi]
com.oracle.graal.nodes.util.GraphUtil$2: Frame escapes at: 83305|MethodCallTarget#HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>
properties:{invokeKind=Special, targetMethod=HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>, stamp=void, returnType=HotSpotType<Lorg/jruby/truffle/runtime/core/RubyString;, resolved>}
arguments: [83299|Const(ArrayNodesFactory.PackNodeFactory.PackRubyArrayRubyString2Node@367287701), 83256|NewFrame, 83348|Pi, 83361|Pi]
at org.jruby.truffle.nodes.core.ArrayNodes$PackNode.pack(ArrayNodes.java)
at org.jruby.truffle.nodes.core.ArrayNodesFactory$PackNodeFactory$PackRubyArrayRubyString2Node.executeRubyString(ArrayNodesFactory.java:12672)
at org.jruby.truffle.nodes.core.ArrayNodesFactory$PackNodeFactory$PackRubyArrayRubyString2Node.execute(ArrayNodesFactory.java:12650)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callInlined(OptimizedCallTarget.java:171)
at com.oracle.graal.truffle.OptimizedDirectCallNode.callProxy(OptimizedDirectCallNode.java:79)
at com.oracle.graal.truffle.OptimizedDirectCallNode.call(OptimizedDirectCallNode.java:61)
at org.jruby.truffle.nodes.dispatch.CachedBoxedDispatchNode.executeDispatch(CachedBoxedDispatchNode.java:145)
at org.jruby.truffle.nodes.dispatch.DispatchHeadNode.dispatch(DispatchHeadNode.java:53)
at org.jruby.truffle.nodes.dispatch.CallDispatchHeadNode.call(CallDispatchHeadNode.java:35)
at org.jruby.truffle.nodes.RubyCallNode.execute(RubyCallNode.java:150)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.methods.CatchBreakAsReturnNode.execute(CatchBreakAsReturnNode.java:36)
at org.jruby.truffle.nodes.methods.CatchReturnNode.execute(CatchReturnNode.java:39)
at org.jruby.truffle.nodes.methods.CatchNextNode.execute(CatchNextNode.java:36)
at org.jruby.truffle.nodes.methods.CatchRetryAsErrorNode.execute(CatchRetryAsErrorNode.java:32)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callInlined(OptimizedCallTarget.java:171)
at com.oracle.graal.truffle.OptimizedDirectCallNode.callProxy(OptimizedDirectCallNode.java:79)
at com.oracle.graal.truffle.OptimizedDirectCallNode.call(OptimizedDirectCallNode.java:61)
at org.jruby.truffle.nodes.dispatch.CachedBoxedDispatchNode.executeDispatch(CachedBoxedDispatchNode.java:145)
at org.jruby.truffle.nodes.dispatch.DispatchHeadNode.dispatch(DispatchHeadNode.java:53)
at org.jruby.truffle.nodes.dispatch.CallDispatchHeadNode.call(CallDispatchHeadNode.java:35)
at org.jruby.truffle.nodes.RubyCallNode.execute(RubyCallNode.java:150)
at org.jruby.truffle.nodes.methods.locals.WriteLocalVariableNodeFactory$WriteLocalVariableObjectNode.execute(WriteLocalVariableNodeFactory.java:474)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.control.IfNode.execute(IfNode.java:49)
at org.jruby.truffle.nodes.RubyNode.executeVoid(RubyNode.java:204)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:80)
at org.jruby.truffle.nodes.methods.CatchBreakAsReturnNode.execute(CatchBreakAsReturnNode.java:36)
at org.jruby.truffle.nodes.methods.CatchReturnNode.execute(CatchReturnNode.java:39)
at org.jruby.truffle.nodes.methods.CatchNextNode.execute(CatchNextNode.java:36)
at org.jruby.truffle.nodes.methods.CatchRetryAsErrorNode.execute(CatchRetryAsErrorNode.java:32)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callInlined(OptimizedCallTarget.java:171)
at com.oracle.graal.truffle.OptimizedDirectCallNode.callProxy(OptimizedDirectCallNode.java:79)
at com.oracle.graal.truffle.OptimizedDirectCallNode.call(OptimizedDirectCallNode.java:61)
at org.jruby.truffle.nodes.dispatch.CachedBoxedDispatchNode.executeDispatch(CachedBoxedDispatchNode.java:145)
at org.jruby.truffle.nodes.dispatch.DispatchHeadNode.dispatch(DispatchHeadNode.java:53)
at org.jruby.truffle.nodes.dispatch.CallDispatchHeadNode.call(CallDispatchHeadNode.java:35)
at org.jruby.truffle.nodes.RubyCallNode.execute(RubyCallNode.java:150)
at org.jruby.truffle.nodes.methods.locals.WriteLocalVariableNodeFactory$WriteLocalVariableObjectNode.execute(WriteLocalVariableNodeFactory.java:474)
at org.jruby.truffle.nodes.RubyNode.executeVoid(RubyNode.java:204)
at org.jruby.truffle.nodes.control.SequenceNode.executeVoid(SequenceNode.java:90)
at org.jruby.truffle.nodes.control.ElidableResultNode.execute(ElidableResultNode.java:53)
at org.jruby.truffle.nodes.AssignmentWrapperNode.execute(AssignmentWrapperNode.java:27)
at org.jruby.truffle.nodes.RubyNode.executeVoid(RubyNode.java:204)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:80)
at org.jruby.truffle.nodes.methods.CatchBreakAsReturnNode.execute(CatchBreakAsReturnNode.java:36)
at org.jruby.truffle.nodes.methods.CatchReturnNode.execute(CatchReturnNode.java:39)
at org.jruby.truffle.nodes.methods.CatchNextNode.execute(CatchNextNode.java:36)
at org.jruby.truffle.nodes.methods.CatchRetryAsErrorNode.execute(CatchRetryAsErrorNode.java:32)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callInlined(OptimizedCallTarget.java:171)
at com.oracle.graal.truffle.OptimizedDirectCallNode.callProxy(OptimizedDirectCallNode.java:79)
at com.oracle.graal.truffle.OptimizedDirectCallNode.call(OptimizedDirectCallNode.java:61)
at org.jruby.truffle.nodes.dispatch.CachedBoxedDispatchNode.executeDispatch(CachedBoxedDispatchNode.java:145)
at org.jruby.truffle.nodes.dispatch.DispatchHeadNode.dispatch(DispatchHeadNode.java:53)
at org.jruby.truffle.nodes.dispatch.CallDispatchHeadNode.call(CallDispatchHeadNode.java:35)
at org.jruby.truffle.nodes.RubyCallNode.execute(RubyCallNode.java:150)
at org.jruby.truffle.nodes.methods.locals.WriteLocalVariableNodeFactory$WriteLocalVariableObjectNode.execute(WriteLocalVariableNodeFactory.java:474)
at org.jruby.truffle.nodes.RubyNode.executeVoid(RubyNode.java:204)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:80)
at org.jruby.truffle.nodes.control.IfNode.execute(IfNode.java:49)
at org.jruby.truffle.nodes.RubyNode.executeVoid(RubyNode.java:204)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:80)
at org.jruby.truffle.nodes.control.IfNode.execute(IfNode.java:47)
at org.jruby.truffle.nodes.control.IfNode.execute(IfNode.java:49)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.control.WhileNode$WhileRepeatingNode.executeRepeating(WhileNode.java:92)
at com.oracle.truffle.api.nodes.LoopNode.executeRepeatingNode(LoopNode.java:46)
at com.oracle.graal.truffle.OptimizedLoopNode.executeLoop(OptimizedLoopNode.java:43)
at org.jruby.truffle.nodes.control.WhileNode.execute(WhileNode.java:51)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.methods.CatchBreakAsReturnNode.execute(CatchBreakAsReturnNode.java:36)
at org.jruby.truffle.nodes.methods.CatchReturnNode.execute(CatchReturnNode.java:39)
at org.jruby.truffle.nodes.methods.CatchNextNode.execute(CatchNextNode.java:36)
at org.jruby.truffle.nodes.methods.CatchRetryAsErrorNode.execute(CatchRetryAsErrorNode.java:32)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callRoot(OptimizedCallTarget.java:260)
Caused by: com.oracle.graal.graph.VerificationError: Frame escapes at: 83305|MethodCallTarget#HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>
properties:{invokeKind=Special, targetMethod=HotSpotMethod<ArrayNodes$PackNode.pack(VirtualFrame, RubyArray, RubyString)>, stamp=void, returnType=HotSpotType<Lorg/jruby/truffle/runtime/core/RubyString;, resolved>}
arguments: [83299|Const(ArrayNodesFactory.PackNodeFactory.PackRubyArrayRubyString2Node@367287701), 83256|NewFrame, 83348|Pi, 83361|Pi]
at com.oracle.graal.truffle.phases.VerifyFrameDoesNotEscapePhase.run(VerifyFrameDoesNotEscapePhase.java:45)
at com.oracle.graal.phases.Phase.run(Phase.java:51)
at com.oracle.graal.phases.BasePhase.apply(BasePhase.java:103)
at com.oracle.graal.phases.Phase.apply(Phase.java:44)
at com.oracle.graal.truffle.PartialEvaluator.createGraph(PartialEvaluator.java:127)
at com.oracle.graal.truffle.TruffleCompilerImpl.compileMethod(TruffleCompilerImpl.java:119)
at com.oracle.graal.truffle.hotspot.HotSpotTruffleRuntime$2.run(HotSpotTruffleRuntime.java:212)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:744)
at com.oracle.graal.compiler.CompilerThread.run(CompilerThread.java:49)
Brandons-MacBook-Pro:jruby-patches brandonfish$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment