Lines Matching refs:env
58 Vset check(Environment env, Context ctx, Vset vset, Hashtable exp) {
59 checkLabel(env, ctx);
63 cond.checkCondition(env, newctx, reach(env, vset), exp);
64 cond = convert(env, newctx, Type.tBoolean, cond);
89 vsTrue = ifTrue.check(env, newctx, vsTrue, exp);
91 vsFalse = ifFalse.check(env, newctx, vsFalse, exp);
99 public Statement inline(Environment env, Context ctx) {
101 cond = cond.inlineValue(env, ctx);
117 ifTrue = ifTrue.inline(env, ctx);
120 ifFalse = ifFalse.inline(env, ctx);
123 return eliminate(env, ifTrue);
126 return eliminate(env, ifFalse);
129 return eliminate(env, new ExpressionStatement(where, cond).inline(env, ctx));
132 cond = new NotExpression(cond.where, cond).inlineValue(env, ctx);
133 return eliminate(env, new IfStatement(where, cond, ifFalse, null));
156 public int costInline(int thresh, Environment env, Context ctx) {
157 int cost = 1 + cond.costInline(thresh, env, ctx);
159 cost += ifTrue.costInline(thresh, env, ctx);
162 cost += ifFalse.costInline(thresh, env, ctx);
170 public void code(Environment env, Context ctx, Assembler asm) {
174 cond.codeBranch(env, newctx, asm, l1, false);
175 ifTrue.code(env, newctx, asm);
180 ifFalse.code(env, newctx, asm);