diff options
| author | 2023-03-26 01:32:50 +1100 | |
|---|---|---|
| committer | 2023-03-26 01:32:50 +1100 | |
| commit | 4cf33cfe0a427d24d754c134eb94b9d1a67da637 (patch) | |
| tree | 71d0864fd5efa77a50ed2061d3a2c6da05c41b33 /src/emu/debug/debugcpu.cpp | |
| parent | fb81cb16bb19603f7fa0fff3698bdfa32b2896fc (diff) | |
Various optimisations to code generaton.
util/bitmap.cpp, util/palette.cpp: Marked lots of things constexpr.
Bitmaps don't throw exceptions on allocation failure, they just become
invalid. Almost nothing in MAME actually checks for this.
emu/profiler.cpp: Abort if the profile stack overflows rather than
throwing an exception. This is a developer feature and if it overflows,
the code is broken. Calling a noreturn noexcept function generates less
code than throwing an exception, which adds up.
util/strformat.cpp: Traded away some unnecessary flexibility for more
compact code. The stream objects must derive from std::basic_ostream
now - they can't just be any old objects with the expected operators.
Diffstat (limited to 'src/emu/debug/debugcpu.cpp')
| -rw-r--r-- | src/emu/debug/debugcpu.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/emu/debug/debugcpu.cpp b/src/emu/debug/debugcpu.cpp index 87d6484d37d..a24cf555aee 100644 --- a/src/emu/debug/debugcpu.cpp +++ b/src/emu/debug/debugcpu.cpp @@ -388,7 +388,7 @@ void debugger_cpu::go_vblank() m_execution_state = exec_state::RUNNING; } -void debugger_cpu::halt_on_next_instruction(device_t *device, util::format_argument_pack<std::ostream> &&args) +void debugger_cpu::halt_on_next_instruction(device_t *device, util::format_argument_pack<char> &&args) { // if something is pending on this CPU already, ignore this request if (device == m_breakcpu) @@ -1176,7 +1176,7 @@ void device_debug::go_branch(bool sense, const char *condition) // to templates in C++ being janky as all get out //------------------------------------------------- -void device_debug::halt_on_next_instruction_impl(util::format_argument_pack<std::ostream> &&args) +void device_debug::halt_on_next_instruction_impl(util::format_argument_pack<char> &&args) { assert(m_exec != nullptr); m_device.machine().debugger().cpu().halt_on_next_instruction(&m_device, std::move(args)); @@ -2079,7 +2079,7 @@ void device_debug::tracer::interrupt_update(int irqline, offs_t pc) // vprintf - generic print to the trace file //------------------------------------------------- -void device_debug::tracer::vprintf(util::format_argument_pack<std::ostream> const &args) +void device_debug::tracer::vprintf(util::format_argument_pack<char> const &args) { // pass through to the file util::stream_format(*m_file, args); |
