org.jruby.compiler.ir.targets
Class JVM

java.lang.Object
  extended by org.jruby.compiler.ir.targets.JVM
All Implemented Interfaces:
CompilerTarget
Direct Known Subclasses:
JDK6, JDK7

public class JVM
extends java.lang.Object
implements CompilerTarget


Constructor Summary
JVM()
          public static void main(String[] args) { IR_Scope scope = IR_Builder.buildFromMain(args); System.out.println("INTERMEDIATE REPRESENTATION:"); System.out.println(scope); JVM jvm = new JVM(); System.out.println("\nGENERATED BYTECODE:"); jvm.codegen(scope); }
 
Method Summary
 org.objectweb.asm.ClassVisitor cls()
           
 org.jruby.compiler.ir.targets.JVM.ClassData clsData()
           
 void codegen(IRScope scope)
           
 void codegen(IRScript script)
           
 void emit(com.kenai.constantine.Constant constant)
           
 void emit(Instr instr)
           
 void emit(IRClass cls)
           
 void emit(IRMethod method)
           
 void emit(Operand operand)
           
 void emit(Variable variable)
           
 void emitBEQ(BEQInstr beq)
           
 void emitCALL(CallInstr call)
           
 void emitCOPY(CopyInstr copy)
           
 void emitDEF_CLS_METH(DefineClassMethodInstr instr)
           
 void emitDEF_INST_METH(DefineInstanceMethodInstr instr)
           
 void emitGET_FIELD(GetFieldInstr putField)
           
 void emitJUMP(JumpInstr jump)
           
 void emitLABEL(LABEL_Instr lbl)
           
 void emitPUT_FIELD(PutFieldInstr putField)
           
 void emitRECV_ARG(ReceiveArgumentInstruction recvArg)
           
 void emitRETURN(ReturnInstr ret)
           
 org.objectweb.asm.commons.GeneratorAdapter method()
           
 void popclass()
           
 void popmethod()
           
 void pushclass()
           
 void pushmethod(java.lang.String name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JVM

public JVM()
public static void main(String[] args) { IR_Scope scope = IR_Builder.buildFromMain(args); System.out.println("INTERMEDIATE REPRESENTATION:"); System.out.println(scope); JVM jvm = new JVM(); System.out.println("\nGENERATED BYTECODE:"); jvm.codegen(scope); }

Method Detail

cls

public org.objectweb.asm.ClassVisitor cls()

clsData

public org.jruby.compiler.ir.targets.JVM.ClassData clsData()

pushclass

public void pushclass()

popclass

public void popclass()

method

public org.objectweb.asm.commons.GeneratorAdapter method()

pushmethod

public void pushmethod(java.lang.String name)

popmethod

public void popmethod()

codegen

public void codegen(IRScope scope)
Specified by:
codegen in interface CompilerTarget

codegen

public void codegen(IRScript script)

emit

public void emit(IRClass cls)

emit

public void emit(IRMethod method)

emit

public void emit(Instr instr)

emit

public void emit(com.kenai.constantine.Constant constant)

emit

public void emit(Operand operand)

emit

public void emit(Variable variable)

emitBEQ

public void emitBEQ(BEQInstr beq)

emitCOPY

public void emitCOPY(CopyInstr copy)

emitCALL

public void emitCALL(CallInstr call)

emitDEF_INST_METH

public void emitDEF_INST_METH(DefineInstanceMethodInstr instr)

emitDEF_CLS_METH

public void emitDEF_CLS_METH(DefineClassMethodInstr instr)

emitJUMP

public void emitJUMP(JumpInstr jump)

emitLABEL

public void emitLABEL(LABEL_Instr lbl)

emitPUT_FIELD

public void emitPUT_FIELD(PutFieldInstr putField)

emitGET_FIELD

public void emitGET_FIELD(GetFieldInstr putField)

emitRETURN

public void emitRETURN(ReturnInstr ret)

emitRECV_ARG

public void emitRECV_ARG(ReceiveArgumentInstruction recvArg)


Copyright © 2002-2009 JRuby Team. All Rights Reserved.