Section CONSTRUCTORS.
Variable ge: genv.
Variable fn: function.
(** 32-bit integer constants and arithmetic *)
(** 64-bit integer constants and arithmetic *)
(** Add offset to pointer *)
(** Translation of conditional branches *)

Lemma transl_cond_single_correct:
forall (rs: regset) m cmp rd r1 r2 insn normal v,
transl_cond_single cmp rd r1 r2 = (insn, normal) ->
v = (if normal then Val.cmpfs cmp rs#r1 rs#r2 else Val.notbool (Val.cmpfs cmp rs#r1 rs#r2)) ->
exec_instr ge fn insn rs m = Next (nextinstr (rs#rd <- v)) m.