Remark int64_shr'_div_two_p:
  forall x y, Int64.shr' x y = Int64.repr (Int64.signed x / two_p (Int.unsigned y)).

Lemma divls_mul_shift_gen: forall x y m p, divls_mul_params (Int64.signed y) = Some(p, m) -> 0 <= m < Int64.modulus /\ 0 <= p < 64 /\ Int64.divs x y = Int64.add (Int64.shr' (Int64.repr ((Int64.signed x * m) / Int64.modulus)) (Int.repr p)) (Int64.shru x (Int64.repr 63)).