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

Lemma data_at__writable_perm : forall {cs : compspecs} sh t p r jm, writable_share sh ->
app_pred (@data_at_ cs sh t p) r -> sepalg.join_sub r (m_phi jm) ->
exists b ofs, p = Vptr b ofs /\
Mem.range_perm (m_dry jm) b (Ptrofs.unsigned ofs) (Ptrofs.unsigned ofs + sizeof t) Memtype.Cur Memtype.Writable.