@Override public String getClassName(ThreadContext context) { return closure.getId(); }
@Override public String getName() { return closure.getId(); }
@Override public String getName() { return closure.getId(); }
@Override public String getClassName(ThreadContext context) { return closure.getId(); }
public String toStringBody() { return new StringBuilder(getId()).append(" = {\n").append(toStringInstrs()).append("\n}\n\n").toString(); }
public String toStringBody() { return new StringBuilder(getId()).append(" = {\n").append(toStringInstrs()).append("\n}\n\n").toString(); }
public void WrappedIRClosure(WrappedIRClosure wrappedirclosure) { print(wrappedirclosure.getClosure().getId()); }
public void WrappedIRClosure(WrappedIRClosure wrappedirclosure) { print(wrappedirclosure.getClosure().getId()); }
public InterpreterContext ensureInstrsReady() { if (IRRuntimeHelpers.isDebug() && !displayedCFG) { LOG.info("Executing '" + closure + "' (pushScope=" + pushScope + ", reuseParentScope=" + reuseParentScope); LOG.info(closure.debugOutput()); displayedCFG = true; } if (interpreterContext == null) { if (IRRuntimeHelpers.shouldPrintIR(closure.getStaticScope().getModule().getRuntime())) { ByteArrayOutputStream baos = IRDumper.printIR(closure, false); LOG.info("Printing simple IR for " + closure.getId() + ":\n" + new String(baos.toByteArray())); } interpreterContext = closure.getInterpreterContext(); } return interpreterContext; }
public InterpreterContext ensureInstrsReady() { if (IRRuntimeHelpers.isDebug() && !displayedCFG) { LOG.info("Executing '" + closure + "' (pushScope=" + pushScope + ", reuseParentScope=" + reuseParentScope); LOG.info(closure.debugOutput()); displayedCFG = true; } if (interpreterContext == null) { if (IRRuntimeHelpers.shouldPrintIR(closure.getStaticScope().getModule().getRuntime())) { ByteArrayOutputStream baos = IRDumper.printIR(closure, false); LOG.info("Printing simple IR for " + closure.getId() + ":\n" + new String(baos.toByteArray())); } interpreterContext = closure.getInterpreterContext(); } return interpreterContext; }
public InterpreterContext ensureInstrsReady() { if (IRRuntimeHelpers.isDebug() && !displayedCFG) { LOG.info("Executing '" + closure + "' (pushScope=" + pushScope + ", reuseParentScope=" + reuseParentScope); LOG.info(closure.debugOutput()); displayedCFG = true; } if (interpreterContext == null) { if (IRRuntimeHelpers.shouldPrintIR(closure.getStaticScope().getModule().getRuntime())) { ByteArrayOutputStream baos = IRDumper.printIR(closure, false); LOG.info("Printing simple IR for " + closure.getId() + ":\n" + new String(baos.toByteArray())); } interpreterContext = closure.getInterpreterContext(); fullInterpreterContext = interpreterContext; } return interpreterContext; }
public InterpreterContext ensureInstrsReady() { if (IRRuntimeHelpers.isDebug() && !displayedCFG) { LOG.info("Executing '" + closure + "' (pushScope=" + pushScope + ", reuseParentScope=" + reuseParentScope); LOG.info(closure.debugOutput()); displayedCFG = true; } if (interpreterContext == null) { if (IRRuntimeHelpers.shouldPrintIR(closure.getStaticScope().getModule().getRuntime())) { ByteArrayOutputStream baos = IRDumper.printIR(closure, false); LOG.info("Printing simple IR for " + closure.getId() + ":\n" + new String(baos.toByteArray())); } interpreterContext = closure.getInterpreterContext(); fullInterpreterContext = interpreterContext; } return interpreterContext; }
/** Used by cloning code */ /* Inlining generates a new name and id and basic cloning will reuse the originals name */ protected IRClosure(IRClosure c, IRScope lexicalParent, int closureId, RubySymbol fullName) { super(c, lexicalParent); this.closureId = closureId; super.setName(fullName); this.startLabel = getNewLabel(getId() + "_START"); this.endLabel = getNewLabel(getId() + "_END"); if (getManager().isDryRun()) { this.body = null; } else { boolean shouldJit = getManager().getInstanceConfig().getCompileMode().shouldJIT(); this.body = shouldJit ? new MixedModeIRBlockBody(c, c.getSignature()) : new InterpretedIRBlockBody(c, c.getSignature()); } this.signature = c.signature; }
/** Used by cloning code */ /* Inlining generates a new name and id and basic cloning will reuse the originals name */ protected IRClosure(IRClosure c, IRScope lexicalParent, int closureId, RubySymbol fullName) { super(c, lexicalParent); this.closureId = closureId; super.setName(fullName); this.startLabel = getNewLabel(getId() + "_START"); this.endLabel = getNewLabel(getId() + "_END"); if (getManager().isDryRun()) { this.body = null; } else { boolean shouldJit = getManager().getInstanceConfig().getCompileMode().shouldJIT(); this.body = shouldJit ? new MixedModeIRBlockBody(c, c.getSignature()) : new InterpretedIRBlockBody(c, c.getSignature()); } this.signature = c.signature; }