Definition check_pp_int' e1 e2 op t e :=
  match op with
  | Cop.Oeq | Cop.One =>
      tc_andp'
        (tc_test_eq' e1 e2)
        (tc_bool (is_int_type t) (op_result_type e))
  | Cop.Ole | Cop.Olt | Cop.Oge | Cop.Ogt =>
      tc_andp'
        (tc_test_order' e1 e2)
        (tc_bool (is_int_type t) (op_result_type e))
| _ => tc_noproof
end.

Lemma denote_tc_assert_nonzero: forall {CS: compspecs} e rho, denote_tc_assert (tc_nonzero e) rho = match (eval_expr e rho) with | Vint i => prop (i <> Int.zero) | Vlong i =>prop (i <> Int64.zero) | _ => FF end.