Section CleanMainTheorem.

Theorem main_safety_clean:
CSL_correct C_program ->
CompCert_compiler C_program = Some Asm_program ->
forall (src_m:Memory.mem) (src_cpm:state),
CSL_init_setup C_program src_m src_cpm ->
entry_point (globalenv C_program) src_m src_cpm (main_ptr C_program) nil ->
forall (limited_builtins:Asm_core.safe_genv x86_context.X86Context.the_ge),
asm_prog_well_formed Asm_program limited_builtins ->
forall U, exists tgt_m0 tgt_m tgt_cpm,
permissionless_init_machine
Asm_program limited_builtins
tgt_m0 tgt_cpm tgt_m (main_ptr C_program) nil /\
spinlock_safe U tgt_cpm tgt_m.