Instance CompSpecs : compspecs.Definition Vprog : varspecs.Definition pair_pair_t := (Tstruct _pair_pair noattr).Definition array_size := 100.Definition uint_sum (contents : list Z) : int :=
  fold_right (fun el sum => Int.add sum (Int.repr el)) Int.zero contents.Definition get_uint32_le (arr: list Z) : int :=
 (Int.or (Int.or (Int.or
            (Int.repr (Znth 0 arr))
   (Int.shl (Int.repr (Znth 1 arr)) (Int.repr  8)))
   (Int.shl (Int.repr (Znth 2 arr)) (Int.repr 16)))
   (Int.shl (Int.repr (Znth 3 arr)) (Int.repr 24))).Ltac solve_arr_range H := 
 match goal with |- context [Znth ?i _] => 
   specialize (H i); spec H; [ computable | ];
   rewrite Int.unsigned_repr; rep_omega
 end.

Lemma body_get22_root_expr: semax_body Vprog Gprog f_get22 get22_spec.