public final class MirBlock
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
BasicBlock |
bb |
MirContext |
ctx |
Constructor and Description |
---|
MirBlock(MirContext ctx,
BasicBlock bb) |
Modifier and Type | Method and Description |
---|---|
<T extends Instruction> |
append(T insn) |
Instruction.Assignment |
assign(Lvalue lhs,
Operand rhs) |
Instruction.Assignment |
assign(Lvalue lhs,
ru.ispras.microtesk.translator.mir.Rvalue rhs) |
ru.ispras.microtesk.translator.mir.Local |
assignLocal(Operand op) |
ru.ispras.microtesk.translator.mir.Local |
assignLocal(ru.ispras.microtesk.translator.mir.Rvalue rhs) |
ru.ispras.fortress.util.Pair<MirBlock,MirBlock> |
branch(Operand cond) |
Instruction.Call |
call(Operand callee,
java.lang.String method,
java.util.List<Operand> args,
ru.ispras.microtesk.translator.mir.Local ret) |
Instruction.Disclose |
disclose(ru.ispras.microtesk.translator.mir.Local lhs,
Operand src,
int index) |
ru.ispras.microtesk.translator.mir.Local |
extract(Operand src,
int size,
Operand lo,
Operand hi) |
ru.ispras.microtesk.translator.mir.Local |
getLocal(int index) |
ru.ispras.microtesk.translator.mir.Local |
getNamedLocal(java.lang.String name) |
Instruction.Branch |
jump(BasicBlock bb) |
Instruction.Branch |
jump(MirBlock block) |
ru.ispras.microtesk.translator.mir.Local |
newLocal(int size) |
ru.ispras.microtesk.translator.mir.Local |
newLocal(MirTy type) |
Instruction.Call |
thiscall(java.lang.String method,
java.util.List<Operand> args,
ru.ispras.microtesk.translator.mir.Local ret) |
public final BasicBlock bb
public final MirContext ctx
public MirBlock(MirContext ctx, BasicBlock bb)
public ru.ispras.microtesk.translator.mir.Local getLocal(int index)
public ru.ispras.microtesk.translator.mir.Local newLocal(int size)
public ru.ispras.microtesk.translator.mir.Local newLocal(MirTy type)
public ru.ispras.microtesk.translator.mir.Local getNamedLocal(java.lang.String name)
public Instruction.Assignment assign(Lvalue lhs, Operand rhs)
public Instruction.Assignment assign(Lvalue lhs, ru.ispras.microtesk.translator.mir.Rvalue rhs)
public ru.ispras.microtesk.translator.mir.Local assignLocal(Operand op)
public ru.ispras.microtesk.translator.mir.Local assignLocal(ru.ispras.microtesk.translator.mir.Rvalue rhs)
public ru.ispras.microtesk.translator.mir.Local extract(Operand src, int size, Operand lo, Operand hi)
public Instruction.Branch jump(MirBlock block)
public Instruction.Branch jump(BasicBlock bb)
public Instruction.Disclose disclose(ru.ispras.microtesk.translator.mir.Local lhs, Operand src, int index)
public Instruction.Call thiscall(java.lang.String method, java.util.List<Operand> args, ru.ispras.microtesk.translator.mir.Local ret)
public Instruction.Call call(Operand callee, java.lang.String method, java.util.List<Operand> args, ru.ispras.microtesk.translator.mir.Local ret)
public <T extends Instruction> T append(T insn)