split out sim_util.write_il from sim_util.do_sim