Definition store_byte_list m b ofs lv :=
Mem.storebytes m b ofs (concat (map (encode_val Mint8unsigned) lv)).

Lemma data_at_bytes : forall {CS : compspecs} sh z (bytes : list val) buf jm phi
(Hreadable : readable_share sh) (Hlen : z = Zlength bytes) (J : join_sub phi (m_phi jm))
(Hbuf : app_pred (data_at sh (tarray tuchar z) bytes buf) phi)
(Hdef : Forall (fun x => x <> Vundef) bytes),
match buf with
| Vptr b ofs =>
Mem.loadbytes (m_dry jm) b (Ptrofs.unsigned ofs) z =
Some (concat (map (encode_val Mint8unsigned) bytes))
| _ => False
end.