public static IRubyObject invokeModuleBody(ThreadContext context, CompiledIRMethod method) { RubyModule implClass = method.getImplementationClass(); return method.call(context, implClass, implClass, ""); }
public static IRubyObject invokeModuleBody(ThreadContext context, CompiledIRMethod method) { RubyModule implClass = method.getImplementationClass(); return method.call(context, implClass, implClass, ""); }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, args, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, arg1, arg2, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, args, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, arg1, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, arg1, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
@Override public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) { if (IRRuntimeHelpers.isDebug()) { // FIXME: name should probably not be "" ever. String realName = name == null || "".equals(name) ? this.name : name; LOG.info("Executing '" + realName + "'"); } try { // update call stacks (push: frame, class, scope, etc.) RubyModule implementationClass = getImplementationClass(); context.preMethodFrameAndScope(implementationClass, name, self, block, scope); context.setCurrentVisibility(getVisibility()); return (IRubyObject)this.method.invokeWithArguments(context, scope, self, arg0, arg1, arg2, block); } catch (Throwable t) { Helpers.throwException(t); // not reached return null; } finally { // update call stacks (pop: ..) context.popFrame(); context.postMethodScopeOnly(); } }
if (method.getImplementationClass().getMethodLocation().isSingleton()) { IRubyObject possibleRealClass = ((MetaClass) method.getImplementationClass()).getAttached(); if (possibleRealClass instanceof RubyModule) { excludeModuleName = "Meta:" + ((RubyModule) possibleRealClass).getName(); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), methodName, "skipping method: " + excludeModuleName + '#' + methodName); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), methodName, "live compiled methods: " + methodCount); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), className + '.' + methodName, "done jitting"); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), className + '.' + methodName, "Could not compile; passes run: " + method.getIRScope().getExecutedPasses(), t.getMessage()); if (jitCompiler.config.isJitLoggingVerbose()) { t.printStackTrace();
if (method.getImplementationClass().getMethodLocation().isSingleton()) { IRubyObject possibleRealClass = ((MetaClass) method.getImplementationClass()).getAttached(); if (possibleRealClass instanceof RubyModule) { excludeModuleName = "Meta:" + ((RubyModule) possibleRealClass).getName(); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), methodName, "skipping method: " + excludeModuleName + '#' + methodName); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), methodName, "live compiled methods: " + methodCount); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), className + '.' + methodName, "done jitting"); JITCompiler.log(method.getImplementationClass(), method.getFile(), method.getLine(), className + '.' + methodName, "Could not compile; passes run: " + method.getIRScope().getExecutedPasses(), t.getMessage()); if (jitCompiler.config.isJitLoggingVerbose()) { t.printStackTrace();
.append("class", RubyModule.class, compiledIRMethod.getImplementationClass()) .append("frameName", String.class, site.name());
.append("class", RubyModule.class, compiledIRMethod.getImplementationClass()) .append("frameName", String.class, site.name());