コード例 #1
0
ファイル: ARETURN.java プロジェクト: dacut/juliet
  @Override
  public void generate(@Nonnull PrintWriter pw) {
    ExecutionState inc = getIncomingExecutionState();
    Variable value = inc.peek(0);

    pw.println("    ret " + value.getType().getLLVMType() + " " + value.getName());
  }
コード例 #2
0
ファイル: DREM.java プロジェクト: dacut/juliet
 @Override
 public void generate(@Nonnull PrintWriter pw) {
   ExecutionState inc = getIncomingExecutionState();
   pw.println(
       "    "
           + var.getName()
           + " = frem double "
           + inc.peek(1).getName()
           + ", "
           + inc.peek(0).getName());
 }
コード例 #3
0
ファイル: IASTORE.java プロジェクト: dacut/juliet
  @Override
  public void generate(@Nonnull PrintWriter pw) {
    ExecutionState inc = getIncomingExecutionState();
    Variable value = inc.peek(0);
    Variable index = inc.peek(1);
    Variable arrayref = inc.peek(2);

    pw.println(
        "    call void(%array1.int *, i32, i32)* @iastore("
            + "%array1.int *"
            + arrayref.getName()
            + ", "
            + "i32 "
            + index.getName()
            + ", "
            + "i32 "
            + value.getName()
            + ")");
  }
コード例 #4
0
ファイル: I2B.java プロジェクト: dacut/juliet
 @Override
 public void generate(@Nonnull PrintWriter pw) {
   ExecutionState inc = getIncomingExecutionState();
   pw.println("    " + var.getName() + " = trunc i32 " + inc.peek().getName() + " to i8");
 }