void sim_engine_vabort (SIM_DESC sd, sim_cpu *cpu, sim_cia cia, const char *fmt, va_list ap) { ASSERT (sd == NULL || STATE_MAGIC (sd) == SIM_MAGIC_NUMBER); if (sd == NULL) { vfprintf (stderr, fmt, ap); fprintf (stderr, "\nQuit\n"); abort (); } else if (STATE_ENGINE (sd)->jmpbuf == NULL) { sim_io_evprintf (sd, fmt, ap); sim_io_eprintf (sd, "\n"); sim_io_error (sd, "Quit Simulator"); abort (); } else { sim_io_evprintf (sd, fmt, ap); sim_io_eprintf (sd, "\n"); sim_engine_halt (sd, cpu, NULL, cia, sim_stopped, SIM_SIGABRT); } }
void sim_engine_abort (SIM_DESC sd, sim_cpu *cpu, sim_cia cia, const char *fmt, ...) { ASSERT (sd == NULL || STATE_MAGIC (sd) == SIM_MAGIC_NUMBER); if (sd != NULL) { va_list ap; va_start (ap, fmt); sim_io_evprintf (sd, fmt, ap); va_end (ap); sim_io_error (sd, "\n"); } else { va_list ap; va_start (ap, fmt); vfprintf (stderr, fmt, ap); va_end (ap); fprintf (stderr, "\n"); abort (); } }
void hw_trace (struct hw *me, const char *fmt, ...) { if (hw_trace_p (me)) /* to be sure, to be sure */ { va_list ap; va_start (ap, fmt); sim_io_eprintf (hw_system (me), "%s: ", hw_path (me)); sim_io_evprintf (hw_system (me), fmt, ap); sim_io_eprintf (hw_system (me), "\n"); va_end (ap); } }