Lines Matching defs:e2

162 fun mk_MOVE e1 (Tree.ESEQ(s1, Tree.ESEQ(s2,e2))) =
163 Tree.SEQ(s1, mk_MOVE e1 (Tree.ESEQ(s2,e2)))
164 | mk_MOVE e1 (Tree.ESEQ(s1, e2)) =
165 Tree.SEQ(s1, Tree.MOVE (e1,e2))
170 | mk_PAIR (Tree.PAIR (e1,e2)) =
171 Tree.PAIR(mk_PAIR e1, mk_PAIR e2)
248 convert_ESEQ (Tree.ESEQ(Tree.MOVE(e1, e2), Tree.ESEQ(s2,e))) =
250 Tree.MOVE(e1, convert_ESEQ e2), s2), convert_ESEQ e))
263 fun discompose_move(Tree.MOVE(Tree.PAIR(e1,e2), Tree.PAIR(e3,e4))) =
264 discompose_move(Tree.MOVE(e1,e3)) @ discompose_move(Tree.MOVE(e2,e4))
290 | rename_temp_stm (Tree.MOVE (e1, e2)) offset =
293 val (e2', m2) = rename_temp_exp e2 offset;
295 (Tree.MOVE (e1', e2'), Int.max (m1, m2))
306 rename_temp_exp (Tree.BINOP (binop, e1, e2)) offset =
309 val (e2', m2) = rename_temp_exp e2 offset;
311 (Tree.BINOP (binop, e1', e2'), Int.max (m1, m2))
329 | rename_temp_exp (Tree.RELOP (relop, e1, e2)) offset =
332 val (e2', m2) = rename_temp_exp e2 offset;
334 (Tree.RELOP (relop, e1', e2'), Int.max (m1, m2))
343 | rename_temp_exp (Tree.CALL (e1, e2)) offset =
346 val (e2', m2) = rename_temp_exp e2 offset;
348 (Tree.CALL (e1', e2'), Int.max (m1, m2))
350 | rename_temp_exp (Tree.PAIR (e1, e2)) offset =
353 val (e2', m2) = rename_temp_exp e2 offset;
355 (Tree.PAIR (e1', e2'), Int.max (m1, m2))
362 linerize_IR_stm (Tree.MOVE (e1, Tree.ESEQ (s, e2))) =
363 (linerize_IR_stm s) @ linerize_IR_stm (Tree.MOVE (e1, e2)) |
365 linerize_IR_stm (Tree.MOVE(Tree.PAIR(e1,e2), Tree.PAIR(e3,e4))) =
366 linerize_IR_stm (Tree.MOVE(e1,e3)) @ linerize_IR_stm (Tree.MOVE(e2,e4))
368 linerize_IR_stm (Tree.MOVE (e1, Tree.CALL (Tree.NAME s, e2))) =
383 (linerize_IR_stm (Tree.MOVE (fun_in'', e2)))@fun_ir''@(linerize_IR_stm (Tree.MOVE (e1, fun_out'')))
385 else [Tree.MOVE (e1, Tree.CALL (Tree.NAME s, e2))]
470 fun one_exp (Tree.BINOP(bop,e1,e2)) =
471 (print_bop bop) ^ " " ^ one_exp e1 ^ ", " ^ one_exp e2
472 | one_exp (Tree.RELOP(rop, e1,e2)) =
473 (one_exp e1) ^ " " ^ (print_rop rop) ^ " " ^ one_exp e2
486 | one_exp (Tree.PAIR(e1,e2)) =
487 "(" ^ one_exp e1 ^ "," ^ one_exp e2 ^ ")"