public override void CGenStmt(Env env, CGenState state) {
Reg ret = CGenExprStmt(env, this.Cond, state);
CGenTest(ret, state);
Int32 false_label = state.RequestLabel();
Int32 finish_label = state.RequestLabel();
state.JZ(false_label);
this.TrueStmt.CGenStmt(env, state);
state.JMP(finish_label);
state.CGenLabel(false_label);
this.FalseStmt.CGenStmt(env, state);
state.CGenLabel(finish_label);
}
}