oracle / graal

GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀
https://www.graalvm.org
Other
20.34k stars 1.63k forks source link

gosu: Missing LLVM builtin: llvm.objc.autoreleasePoolPush (IllegalStateException) #2331

Open deepj opened 4 years ago

deepj commented 4 years ago
truffleruby 20.1.0-dev-7e4cc87e, like ruby 2.6.5, GraalVM CE Native [x86_64-darwin]

To reproduce:

gem install gosu
ruby -rgosu -e 'w = Gosu::Window.new(200, 150); w.caption = "It works!"; w.show'

Note: sdl2 needs to be installed on your OS

Error:

~/.rubies/truffleruby-dev/lib/mri/rubygems/core_ext/kernel_require.rb:54:in `gem_original_require': Missing LLVM builtin: llvm.objc.autoreleasePoolPush (IllegalStateException) (RuntimeError)
    from com.oracle.truffle.llvm.runtime.nodes.intrinsics.llvm.x86.LLVMX86_MissingBuiltin.doMissing(LLVMX86_MissingBuiltin.java:50)
    from com.oracle.truffle.llvm.runtime.nodes.intrinsics.llvm.x86.LLVMX86_MissingBuiltinNodeGen.executeGeneric(LLVMX86_MissingBuiltinNodeGen.java:42)
    from com.oracle.truffle.llvm.runtime.nodes.vars.LLVMWriteNodeFactory$LLVMWritePointerNodeGen.execute_generic1(LLVMWriteNodeFactory.java:973)
    from com.oracle.truffle.llvm.runtime.nodes.vars.LLVMWriteNodeFactory$LLVMWritePointerNodeGen.execute(LLVMWriteNodeFactory.java:954)
    from com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode$InitializedBlock.doBlock(LLVMBasicBlockNode.java:169)
    from com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNodeFactory$InitializedBlockNodeGen.execute(LLVMBasicBlockNodeFactory.java:49)
    from com.oracle.truffle.llvm.runtime.nodes.control.LLVMDispatchBasicBlockNode.doDispatch(LLVMDispatchBasicBlockNode.java:82)
    from com.oracle.truffle.llvm.runtime.nodes.control.LLVMDispatchBasicBlockNodeGen.executeGeneric(LLVMDispatchBasicBlockNodeGen.java:44)
    from com.oracle.truffle.llvm.runtime.nodes.control.LLVMFunctionRootNode.doRun(LLVMFunctionRootNode.java:76)
    from com.oracle.truffle.llvm.runtime.nodes.control.LLVMFunctionRootNodeGen.executeGeneric(LLVMFunctionRootNodeGen.java:46)
    from com.oracle.truffle.llvm.runtime.nodes.func.LLVMFunctionStartNode.execute(LLVMFunctionStartNode.java:87)
    from org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:479)
Translated to internal error
    from ~/.rubies/truffleruby-dev/lib/mri/rubygems/core_ext/kernel_require.rb:54:in `require'
    from ~/.gem/truffleruby/2.6.5/gems/gosu-0.15.1/lib/gosu.rb:25:in `<top (required)>'
    from ~/.rubies/truffleruby-dev/lib/mri/rubygems/core_ext/kernel_require.rb:130:in `gem_original_require'
    from ~/.rubies/truffleruby-dev/lib/mri/rubygems/core_ext/kernel_require.rb:130:in `require'
    from -e:1:in `call'
    from -e:1:in `require'
    from -e:1:in `<main>'
eregon commented 4 years ago

@deepj Thanks for the report. I moved this issue to the Sulong tracker.