(** Correctness of the translation of [switch] statements *)

Lemma transl_switch_correct:
forall j cs sp e m f map r nexits t ns,
tr_switch f.(fn_code) map r nexits t ns ->
forall rs i act,
rs#r = Vint i ->
map_wf map ->
match_env j map e nil rs ->
comptree_match i t = Some act ->
exists nd, exists rs',
corestep_star rtl_eff_sem  tge (RTL_State cs f sp ns rs) m (RTL_State cs f sp nd rs') m /\
nth_error nexits act = Some nd /\
match_env j map e nil rs'.