Remark shift_symbol_address:
  forall id ofs delta,
  Genv.symbol_address ge id (Ptrofs.add ofs (Ptrofs.of_int delta)) = Val.add (Genv.symbol_address ge id ofs) (Vint delta).

Theorem eval_subimm: forall n, unary_constructor_sound (subimm n) (fun v => Val.sub (Vint n) v).