Section CONSTRUCTORS.
Variable ge: genv.
Variable fn: function.
(** Decomposition of an integer constant *)
Remark decompose_int_arm_nil:
forall N n p, decompose_int_arm N n p = nil -> n = Int.zero.
Remark decompose_int_thumb_nil:
forall N n p, decompose_int_thumb N n p = nil -> n = Int.zero.
(** Loading a constant. *)

Lemma loadimm_correct:
forall r n k rs m,
exists rs',
exec_straight ge fn (loadimm r n k) rs m  k rs' m
/\ rs'#r = Vint n
/\ forall r': preg, r' <> r -> if_preg r' = true -> rs'#r' = rs#r'.