From 2871c6d19d83973c78659f76bfde2ff0e616cbf4 Mon Sep 17 00:00:00 2001 From: Minero Aoki Date: Sun, 24 May 2009 12:18:09 +0000 Subject: [PATCH] add preproc tags. git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4244 1b9489fe-b721-0410-924e-b54b9192deb8 --- net/loveruby/cflat/compiler/IRGenerator.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net/loveruby/cflat/compiler/IRGenerator.java b/net/loveruby/cflat/compiler/IRGenerator.java index 70f9a10..6a96132 100644 --- a/net/loveruby/cflat/compiler/IRGenerator.java +++ b/net/loveruby/cflat/compiler/IRGenerator.java @@ -90,9 +90,11 @@ class IRGenerator implements ASTVisitor { } // #@@} + // #@@range/assign{ private void assign(Location loc, Expr lhs, Expr rhs) { stmts.add(new Assign(loc, addressOf(lhs), rhs)); } + // #@@} private DefinedVariable tmpVar(Type t) { return scopeStack.getLast().allocateTmp(t); @@ -692,7 +694,9 @@ class IRGenerator implements ASTVisitor { Expr expr = addressOf(transformExpr(node.expr())); Expr offset = ptrdiff(node.offset()); Expr addr = new Bin(ptr_t(), Op.ADD, expr, offset); + // #@@range/Member_ret{ return node.isLoadable() ? mem(addr, node.type()) : addr; + // #@@} } // #@@} @@ -801,9 +805,11 @@ class IRGenerator implements ASTVisitor { } // mem(expr) -> (Mem expr) + // #@@range/mem{ private Mem mem(Expr expr, Type t) { return new Mem(asmType(t), expr); } + // #@@} // #@@range/ptrdiff{ private Int ptrdiff(long n) {