diff options
| author | 2024-09-26 13:07:03 -0400 | |
|---|---|---|
| committer | 2024-09-27 03:07:03 +1000 | |
| commit | 48933ef893c541eb6ff05366b906cfe42c23b4b1 (patch) | |
| tree | 3d165d96a15eaee13b6e421e8b345745d0c51833 /src/devices/cpu | |
| parent | 0125087cbe3ce69cbd99fb4f65c8ece580e0dd8b (diff) | |
Added ATTR_COLD to common lifecycle methods for many files in src/devices. (#12822)
Diffstat (limited to 'src/devices/cpu')
329 files changed, 1245 insertions, 1245 deletions
diff --git a/src/devices/cpu/8x300/8x300.h b/src/devices/cpu/8x300/8x300.h index d4bfd85a976..82e82a89f92 100644 --- a/src/devices/cpu/8x300/8x300.h +++ b/src/devices/cpu/8x300/8x300.h @@ -55,8 +55,8 @@ protected: n8x300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_state_interface implementation virtual void state_import(const device_state_entry &entry) override; diff --git a/src/devices/cpu/adsp2100/adsp2100.h b/src/devices/cpu/adsp2100/adsp2100.h index 392ed7278b4..bf50fbca7a3 100644 --- a/src/devices/cpu/adsp2100/adsp2100.h +++ b/src/devices/cpu/adsp2100/adsp2100.h @@ -213,8 +213,8 @@ protected: adsp21xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; // device_execute_interface overrides diff --git a/src/devices/cpu/alpha/alpha.h b/src/devices/cpu/alpha/alpha.h index 2d9d4d9f910..60d0a83ca73 100644 --- a/src/devices/cpu/alpha/alpha.h +++ b/src/devices/cpu/alpha/alpha.h @@ -21,8 +21,8 @@ protected: alpha_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -80,8 +80,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void cpu_execute(u32 const op) override; virtual bool cpu_translate(u64 &address, int intention) override; @@ -253,7 +253,7 @@ public: dec_21064_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual u32 icache_fetch(u64 const address) override; diff --git a/src/devices/cpu/alto2/alto2cpu.h b/src/devices/cpu/alto2/alto2cpu.h index c56629ca167..d8817978ba8 100644 --- a/src/devices/cpu/alto2/alto2cpu.h +++ b/src/devices/cpu/alto2/alto2cpu.h @@ -207,9 +207,9 @@ public: protected: //! device-level override for start - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; //! device-level override for reset - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; //! device-level override for post reset void interface_post_reset() override; @@ -224,7 +224,7 @@ protected: virtual space_config_vector memory_space_config() const override; //! device (P)ROMs - virtual const tiny_rom_entry *device_rom_region() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; //! device_state_interface overrides virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; @@ -252,9 +252,9 @@ private: std::unique_ptr<uint32_t[]> m_ucode_cram; std::unique_ptr<uint16_t[]> m_const_data; - void ucode_map(address_map &map); - void const_map(address_map &map); - void iomem_map(address_map &map); + void ucode_map(address_map &map) ATTR_COLD; + void const_map(address_map &map) ATTR_COLD; + void iomem_map(address_map &map) ATTR_COLD; //! read microcode CROM or CRAM, depending on m_ucode_ram_base uint32_t crom_cram_r(offs_t offset); diff --git a/src/devices/cpu/am29000/am29000.h b/src/devices/cpu/am29000/am29000.h index 9eea0b09a41..d95efc1f587 100644 --- a/src/devices/cpu/am29000/am29000.h +++ b/src/devices/cpu/am29000/am29000.h @@ -440,8 +440,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/amis2000/amis2000.h b/src/devices/cpu/amis2000/amis2000.h index 6b4bcf0ebd7..18f6a8baf70 100644 --- a/src/devices/cpu/amis2000/amis2000.h +++ b/src/devices/cpu/amis2000/amis2000.h @@ -32,18 +32,18 @@ public: // uncustomizable, but wildfire proves to be an exception to that rule. void set_7seg_table(const u8 *ptr) { m_7seg_table = ptr; } // d0=A, d1=B, etc. - void data_64x4(address_map &map); - void data_80x4(address_map &map); - void program_1_5k(address_map &map); - void program_1k(address_map &map); + void data_64x4(address_map &map) ATTR_COLD; + void data_80x4(address_map &map) ATTR_COLD; + void program_1_5k(address_map &map) ATTR_COLD; + void program_1k(address_map &map) ATTR_COLD; protected: // construction/destruction amis2000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } // 4 cycles per machine cycle @@ -191,8 +191,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // digital-to-frequency converter u8 m_d2f_latch; diff --git a/src/devices/cpu/apexc/apexc.h b/src/devices/cpu/apexc/apexc.h index b795292cf45..6998a62dad4 100644 --- a/src/devices/cpu/apexc/apexc.h +++ b/src/devices/cpu/apexc/apexc.h @@ -28,8 +28,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/arc/arc.h b/src/devices/cpu/arc/arc.h index f5a49fdf76c..dc00869bb44 100644 --- a/src/devices/cpu/arc/arc.h +++ b/src/devices/cpu/arc/arc.h @@ -25,8 +25,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/arcompact/arcompact.h b/src/devices/cpu/arcompact/arcompact.h index 11be86da76a..714e0f1ebeb 100644 --- a/src/devices/cpu/arcompact/arcompact.h +++ b/src/devices/cpu/arcompact/arcompact.h @@ -22,8 +22,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } @@ -42,7 +42,7 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void arcompact_auxreg_map(address_map &map); + void arcompact_auxreg_map(address_map &map) ATTR_COLD; uint32_t arcompact_auxreg002_LPSTART_r(); diff --git a/src/devices/cpu/arm/arm.h b/src/devices/cpu/arm/arm.h index 9a99b16cf54..072ae9b7583 100644 --- a/src/devices/cpu/arm/arm.h +++ b/src/devices/cpu/arm/arm.h @@ -44,8 +44,8 @@ protected: arm_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 3; } diff --git a/src/devices/cpu/arm7/arm7.h b/src/devices/cpu/arm7/arm7.h index 44591e9dad1..ad59176f680 100644 --- a/src/devices/cpu/arm7/arm7.h +++ b/src/devices/cpu/arm7/arm7.h @@ -92,8 +92,8 @@ protected: void postload(); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 3; } @@ -663,7 +663,7 @@ public: protected: arm946es_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; private: uint32_t cp15_control, cp15_itcm_base, cp15_dtcm_base, cp15_itcm_size, cp15_dtcm_size; @@ -694,7 +694,7 @@ public: virtual void arm7_rt_w_callback(offs_t offset, uint32_t data) override; protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; class igs036_cpu_device : public arm946es_cpu_device diff --git a/src/devices/cpu/arm7/lpc210x.h b/src/devices/cpu/arm7/lpc210x.h index e481d126f67..ec6ac9a461c 100644 --- a/src/devices/cpu/arm7/lpc210x.h +++ b/src/devices/cpu/arm7/lpc210x.h @@ -66,12 +66,12 @@ public: // todo, use an appropriate flash type instead uint8_t m_flash[0x8000]; // needs to be public because the harmony/melody device injects contents with memcpy, yuck - void lpc2103_map(address_map &map); + void lpc2103_map(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; diff --git a/src/devices/cpu/arm7/upd800468.h b/src/devices/cpu/arm7/upd800468.h index 1470f4ea1af..c3d62ad6572 100644 --- a/src/devices/cpu/arm7/upd800468.h +++ b/src/devices/cpu/arm7/upd800468.h @@ -30,8 +30,8 @@ public: void control_w(u8); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; TIMER_CALLBACK_MEMBER(irq_timer_tick); @@ -48,7 +48,7 @@ class upd800468_device : public arm7_cpu_device public: upd800468_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); - void upd800468_map(address_map &map); + void upd800468_map(address_map &map) ATTR_COLD; template<offs_t i> auto adc_cb() { return m_adc_cb[i].bind(); } @@ -75,9 +75,9 @@ protected: void port_update(offs_t); // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; diff --git a/src/devices/cpu/asap/asap.h b/src/devices/cpu/asap/asap.h index 62bbd15c1f1..d8e4bcd8781 100644 --- a/src/devices/cpu/asap/asap.h +++ b/src/devices/cpu/asap/asap.h @@ -70,8 +70,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/avr8/avr8.h b/src/devices/cpu/avr8/avr8.h index 1e93442b00c..9dc3d09035a 100644 --- a/src/devices/cpu/avr8/avr8.h +++ b/src/devices/cpu/avr8/avr8.h @@ -599,8 +599,8 @@ protected: std::unique_ptr<uint8_t[]> m_shift_flag_cache; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -783,14 +783,14 @@ protected: typedef delegate<void (void)> timer_func; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; // address maps - void base_internal_map(address_map &map); + void base_internal_map(address_map &map) ATTR_COLD; // Miscellaneous registers void wdtcsr_w(uint8_t data); @@ -1101,7 +1101,7 @@ class atmega88_device : public avr8_device<3> public: // construction/destruction atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void atmega88_internal_map(address_map &map); + void atmega88_internal_map(address_map &map) ATTR_COLD; }; // ======================> atmega168_device @@ -1113,7 +1113,7 @@ public: atmega168_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual void update_interrupt(int source) override; - void atmega168_internal_map(address_map &map); + void atmega168_internal_map(address_map &map) ATTR_COLD; }; // ======================> atmega328_device @@ -1125,7 +1125,7 @@ public: atmega328_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual void update_interrupt(int source) override; - void atmega328_internal_map(address_map &map); + void atmega328_internal_map(address_map &map) ATTR_COLD; }; // ======================> atmega644_device @@ -1137,7 +1137,7 @@ public: atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual void update_interrupt(int source) override; - void atmega644_internal_map(address_map &map); + void atmega644_internal_map(address_map &map) ATTR_COLD; }; // ======================> atmega1280_device @@ -1149,7 +1149,7 @@ public: atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual void update_interrupt(int source) override; - void atmega1280_internal_map(address_map &map); + void atmega1280_internal_map(address_map &map) ATTR_COLD; }; // ======================> atmega2560_device @@ -1161,7 +1161,7 @@ public: atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual void update_interrupt(int source) override; - void atmega2560_internal_map(address_map &map); + void atmega2560_internal_map(address_map &map) ATTR_COLD; }; // ======================> attiny15_device @@ -1171,7 +1171,7 @@ class attiny15_device : public avr8_device<2> public: // construction/destruction attiny15_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void attiny15_internal_map(address_map &map); + void attiny15_internal_map(address_map &map) ATTR_COLD; }; /*************************************************************************** diff --git a/src/devices/cpu/axc51/axc51.h b/src/devices/cpu/axc51/axc51.h index 1f9a2f1f25b..ee6439b59a8 100644 --- a/src/devices/cpu/axc51/axc51.h +++ b/src/devices/cpu/axc51/axc51.h @@ -30,9 +30,9 @@ public: auto spi_out_cb() { return m_spi_out_cb.bind(); } auto spi_out_dir_cb() { return m_spi_out_dir_cb.bind(); } - void program_internal(address_map &map); - void data_internal(address_map &map); - void io_internal(address_map &map); + void program_internal(address_map &map) ATTR_COLD; + void data_internal(address_map &map) ATTR_COLD; + void io_internal(address_map &map) ATTR_COLD; protected: // construction/destruction @@ -40,8 +40,8 @@ protected: axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, address_map_constructor io_map, int program_width, int data_width, uint8_t features = 0); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -523,12 +523,12 @@ public: protected: ax208_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - virtual const tiny_rom_entry *device_rom_region() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; - void ax208_internal_program_mem(address_map &map); + void ax208_internal_program_mem(address_map &map) ATTR_COLD; }; class ax208p_cpu_device : public ax208_cpu_device @@ -538,7 +538,7 @@ public: ax208p_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual const tiny_rom_entry *device_rom_region() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; }; diff --git a/src/devices/cpu/bcp/dp8344.h b/src/devices/cpu/bcp/dp8344.h index 263462f975a..f805b99fc50 100644 --- a/src/devices/cpu/bcp/dp8344.h +++ b/src/devices/cpu/bcp/dp8344.h @@ -65,8 +65,8 @@ protected: dp8344_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u32 execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/c33/s1c33209.h b/src/devices/cpu/c33/s1c33209.h index aab93f4c607..d2a3581adcf 100644 --- a/src/devices/cpu/c33/s1c33209.h +++ b/src/devices/cpu/c33/s1c33209.h @@ -26,13 +26,13 @@ protected: u32 clock, address_map_constructor internal_map); - template <offs_t RomBytes> void memory_map(address_map &map); + template <offs_t RomBytes> void memory_map(address_map &map) ATTR_COLD; protected: - void device_reset() override; + void device_reset() override ATTR_COLD; private: - void peripheral_map(address_map &map); + void peripheral_map(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/capricorn/capricorn.h b/src/devices/cpu/capricorn/capricorn.h index 3051c8b9bd7..6e5cf79f0d5 100644 --- a/src/devices/cpu/capricorn/capricorn.h +++ b/src/devices/cpu/capricorn/capricorn.h @@ -33,8 +33,8 @@ public: protected: // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/ccpu/ccpu.h b/src/devices/cpu/ccpu/ccpu.h index 9a952276f6c..f51cc9bf700 100644 --- a/src/devices/cpu/ccpu/ccpu.h +++ b/src/devices/cpu/ccpu/ccpu.h @@ -54,8 +54,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/clipper/clipper.h b/src/devices/cpu/clipper/clipper.h index 6a03ccac86a..19f51650b3b 100644 --- a/src/devices/cpu/clipper/clipper.h +++ b/src/devices/cpu/clipper/clipper.h @@ -151,8 +151,8 @@ protected: clipper_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, const endianness_t endianness, const u32 cpuid); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -356,7 +356,7 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual u32 intrap(const u16 vector, const u32 old_pc) override; diff --git a/src/devices/cpu/cop400/cop400.h b/src/devices/cpu/cop400/cop400.h index 0155a832e05..12cd8315330 100644 --- a/src/devices/cpu/cop400/cop400.h +++ b/src/devices/cpu/cop400/cop400.h @@ -120,20 +120,20 @@ public: uint8_t microbus_r(); void microbus_w(uint8_t data); - void data_128b(address_map &map); - void data_32b(address_map &map); - void data_64b(address_map &map); - void program_1kb(address_map &map); - void program_2kb(address_map &map); - void program_512b(address_map &map); + void data_128b(address_map &map) ATTR_COLD; + void data_32b(address_map &map) ATTR_COLD; + void data_64b(address_map &map) ATTR_COLD; + void program_1kb(address_map &map) ATTR_COLD; + void program_2kb(address_map &map) ATTR_COLD; + void program_512b(address_map &map) ATTR_COLD; protected: // construction/destruction cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + m_cki - 1) / m_cki; } diff --git a/src/devices/cpu/cops1/cops1base.h b/src/devices/cpu/cops1/cops1base.h index 75009fe7b49..0d850f500d5 100644 --- a/src/devices/cpu/cops1/cops1base.h +++ b/src/devices/cpu/cops1/cops1base.h @@ -70,9 +70,9 @@ protected: cops1_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } diff --git a/src/devices/cpu/cops1/mm5799.h b/src/devices/cpu/cops1/mm5799.h index a07aecd97fa..e8d45625170 100644 --- a/src/devices/cpu/cops1/mm5799.h +++ b/src/devices/cpu/cops1/mm5799.h @@ -41,8 +41,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -51,8 +51,8 @@ protected: virtual void execute_one() override; virtual bool op_argument() override; - void data_map(address_map &map); - void program_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; + void program_map(address_map &map) ATTR_COLD; // opcode helpers u8 ram_r(); diff --git a/src/devices/cpu/cosmac/cosmac.h b/src/devices/cpu/cosmac/cosmac.h index 7071b51e3ee..ec563e75194 100644 --- a/src/devices/cpu/cosmac/cosmac.h +++ b/src/devices/cpu/cosmac/cosmac.h @@ -186,8 +186,8 @@ protected: cosmac_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/cp1610/cp1610.h b/src/devices/cpu/cp1610/cp1610.h index 1def7c2eeaf..37d9d2093bc 100644 --- a/src/devices/cpu/cp1610/cp1610.h +++ b/src/devices/cpu/cp1610/cp1610.h @@ -36,8 +36,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/cr16b/cr16b.h b/src/devices/cpu/cr16b/cr16b.h index a8028b03108..ef63ceed380 100644 --- a/src/devices/cpu/cr16b/cr16b.h +++ b/src/devices/cpu/cr16b/cr16b.h @@ -26,8 +26,8 @@ protected: cr16b_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/cubeqcpu/cubeqcpu.h b/src/devices/cpu/cubeqcpu/cubeqcpu.h index 52b8132739d..76ac972bafe 100644 --- a/src/devices/cpu/cubeqcpu/cubeqcpu.h +++ b/src/devices/cpu/cubeqcpu/cubeqcpu.h @@ -57,8 +57,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -155,8 +155,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -266,8 +266,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/diablo/diablo1300.h b/src/devices/cpu/diablo/diablo1300.h index 68e0fc5bf31..7218b8c0356 100644 --- a/src/devices/cpu/diablo/diablo1300.h +++ b/src/devices/cpu/diablo/diablo1300.h @@ -24,9 +24,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/dsp16/dsp16.h b/src/devices/cpu/dsp16/dsp16.h index 5c4304851f1..f513e3fdceb 100644 --- a/src/devices/cpu/dsp16/dsp16.h +++ b/src/devices/cpu/dsp16/dsp16.h @@ -75,9 +75,9 @@ protected: address_map_constructor &&data_map); // device_t implementation - virtual void device_start() override; - virtual void device_stop() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) >> 1; } @@ -179,7 +179,7 @@ private: using recompiler_ptr = std::unique_ptr<recompiler>; // internal address maps - void program_map(address_map &map); + void program_map(address_map &map) ATTR_COLD; // instruction execution template <bool Debugger, bool Caching> void execute_some_rom(); @@ -347,7 +347,7 @@ protected: virtual void external_memory_enable(address_space &space, bool enable) override; // internal address maps - void data_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; private: required_region_ptr<u16> m_rom; @@ -365,7 +365,7 @@ protected: virtual void external_memory_enable(address_space &space, bool enable) override; // internal address maps - void data_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; private: required_region_ptr<u16> m_rom; diff --git a/src/devices/cpu/dsp32/dsp32.h b/src/devices/cpu/dsp32/dsp32.h index 79d2314c8f7..4f9f3f9bdf9 100644 --- a/src/devices/cpu/dsp32/dsp32.h +++ b/src/devices/cpu/dsp32/dsp32.h @@ -103,8 +103,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/dsp56000/dsp56000.h b/src/devices/cpu/dsp56000/dsp56000.h index d62f2fb1523..5f991419af9 100644 --- a/src/devices/cpu/dsp56000/dsp56000.h +++ b/src/devices/cpu/dsp56000/dsp56000.h @@ -12,8 +12,8 @@ protected: dsp56000_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock); // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) / 2; } diff --git a/src/devices/cpu/dsp56156/dsp56156.h b/src/devices/cpu/dsp56156/dsp56156.h index 67a8e5f4abb..9a4fae9b768 100644 --- a/src/devices/cpu/dsp56156/dsp56156.h +++ b/src/devices/cpu/dsp56156/dsp56156.h @@ -211,8 +211,8 @@ public: void host_interface_write(uint8_t offset, uint8_t data); uint8_t host_interface_read(uint8_t offset); - void dsp56156_program_map(address_map &map); - void dsp56156_x_data_map(address_map &map); + void dsp56156_program_map(address_map &map) ATTR_COLD; + void dsp56156_x_data_map(address_map &map) ATTR_COLD; auto portc_cb() { return portC_cb.bind(); } @@ -220,8 +220,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return clocks; } diff --git a/src/devices/cpu/dspp/dspp.h b/src/devices/cpu/dspp/dspp.h index 68492fb7f40..13dc682b01f 100644 --- a/src/devices/cpu/dspp/dspp.h +++ b/src/devices/cpu/dspp/dspp.h @@ -74,8 +74,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -93,8 +93,8 @@ protected: // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void code_map(address_map &map); - void data_map(address_map &map); + void code_map(address_map &map) ATTR_COLD; + void data_map(address_map &map) ATTR_COLD; enum { diff --git a/src/devices/cpu/e0c6200/e0c6200.h b/src/devices/cpu/e0c6200/e0c6200.h index 6e7bf86aa06..0024092e02a 100644 --- a/src/devices/cpu/e0c6200/e0c6200.h +++ b/src/devices/cpu/e0c6200/e0c6200.h @@ -18,8 +18,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/e0c6200/e0c6s46.h b/src/devices/cpu/e0c6200/e0c6s46.h index cf48f14a562..3f1e09e6c9e 100644 --- a/src/devices/cpu/e0c6200/e0c6s46.h +++ b/src/devices/cpu/e0c6200/e0c6s46.h @@ -69,16 +69,16 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_set_input(int line, int state) override; virtual void execute_one() override; virtual bool check_interrupt() override; - void e0c6s46_data(address_map &map); - void e0c6s46_program(address_map &map); + void e0c6s46_data(address_map &map) ATTR_COLD; + void e0c6s46_program(address_map &map) ATTR_COLD; private: required_shared_ptr<u8> m_vram1; diff --git a/src/devices/cpu/e132xs/e132xs.h b/src/devices/cpu/e132xs/e132xs.h index 3c555d83c7f..5b245afe43f 100644 --- a/src/devices/cpu/e132xs/e132xs.h +++ b/src/devices/cpu/e132xs/e132xs.h @@ -128,12 +128,12 @@ public: void compute_tr(); void adjust_timer_interrupt(); - void e116_16k_iram_map(address_map &map); - void e116_4k_iram_map(address_map &map); - void e116_8k_iram_map(address_map &map); - void e132_16k_iram_map(address_map &map); - void e132_4k_iram_map(address_map &map); - void e132_8k_iram_map(address_map &map); + void e116_16k_iram_map(address_map &map) ATTR_COLD; + void e116_4k_iram_map(address_map &map) ATTR_COLD; + void e116_8k_iram_map(address_map &map) ATTR_COLD; + void e132_16k_iram_map(address_map &map) ATTR_COLD; + void e132_4k_iram_map(address_map &map) ATTR_COLD; + void e132_8k_iram_map(address_map &map) ATTR_COLD; static uint32_t imm_length(uint16_t op); @@ -279,9 +279,9 @@ protected: void init(int scale_mask); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -619,7 +619,7 @@ public: e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -632,7 +632,7 @@ public: e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -645,7 +645,7 @@ public: e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -658,7 +658,7 @@ public: e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -671,7 +671,7 @@ public: e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -684,7 +684,7 @@ public: e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -697,7 +697,7 @@ public: e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -710,7 +710,7 @@ public: e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -723,7 +723,7 @@ public: e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -736,7 +736,7 @@ public: e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -749,7 +749,7 @@ public: gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -762,7 +762,7 @@ public: gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -775,7 +775,7 @@ public: gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; @@ -788,7 +788,7 @@ public: gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; diff --git a/src/devices/cpu/es5510/es5510.h b/src/devices/cpu/es5510/es5510.h index 6061d2e86bc..f64c810906a 100644 --- a/src/devices/cpu/es5510/es5510.h +++ b/src/devices/cpu/es5510/es5510.h @@ -126,8 +126,8 @@ public: void write_to_dol(int32_t value); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override; virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override; diff --git a/src/devices/cpu/esrip/esrip.h b/src/devices/cpu/esrip/esrip.h index 04a11b67560..7b1f2153a0f 100644 --- a/src/devices/cpu/esrip/esrip.h +++ b/src/devices/cpu/esrip/esrip.h @@ -103,9 +103,9 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; void make_ops(); diff --git a/src/devices/cpu/evolution/evo.h b/src/devices/cpu/evolution/evo.h index 8bbdaf60d32..db71b475f10 100644 --- a/src/devices/cpu/evolution/evo.h +++ b/src/devices/cpu/evolution/evo.h @@ -13,8 +13,8 @@ public: evo_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override { return 1; } virtual uint32_t execute_max_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/f2mc16/f2mc16.h b/src/devices/cpu/f2mc16/f2mc16.h index 2a3dbc7362e..ffacb4dd158 100644 --- a/src/devices/cpu/f2mc16/f2mc16.h +++ b/src/devices/cpu/f2mc16/f2mc16.h @@ -44,8 +44,8 @@ protected: f2mc16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void state_import(const device_state_entry &entry) override; virtual void state_export(const device_state_entry &entry) override; diff --git a/src/devices/cpu/f2mc16/mb9061x.h b/src/devices/cpu/f2mc16/mb9061x.h index a68e951f890..4b5b8d31253 100644 --- a/src/devices/cpu/f2mc16/mb9061x.h +++ b/src/devices/cpu/f2mc16/mb9061x.h @@ -90,8 +90,8 @@ protected: mb9061x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual space_config_vector memory_space_config() const override; @@ -148,7 +148,7 @@ class mb90610_device : public mb9061x_device public: mb90610_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void mb90610_map(address_map &map); + void mb90610_map(address_map &map) ATTR_COLD; protected: mb90610_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); }; @@ -158,7 +158,7 @@ class mb90611_device : public mb9061x_device public: mb90611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void mb90611_map(address_map &map); + void mb90611_map(address_map &map) ATTR_COLD; protected: mb90611_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); }; @@ -168,7 +168,7 @@ class mb90641_device : public mb9061x_device public: mb90641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void mb90641_map(address_map &map); + void mb90641_map(address_map &map) ATTR_COLD; protected: mb90641_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); }; diff --git a/src/devices/cpu/f8/f8.h b/src/devices/cpu/f8/f8.h index e6f552f1717..8477b1bf031 100644 --- a/src/devices/cpu/f8/f8.h +++ b/src/devices/cpu/f8/f8.h @@ -33,8 +33,8 @@ protected: }; // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u32 execute_min_cycles() const noexcept override { return 4; } @@ -52,7 +52,7 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void regs_map(address_map &map); + void regs_map(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_regs_config; diff --git a/src/devices/cpu/fr/fr.h b/src/devices/cpu/fr/fr.h index 60e6eb8469f..6d68391a2c0 100644 --- a/src/devices/cpu/fr/fr.h +++ b/src/devices/cpu/fr/fr.h @@ -24,8 +24,8 @@ protected: fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, address_map_constructor map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -63,7 +63,7 @@ public: mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/g65816/g65816.h b/src/devices/cpu/g65816/g65816.h index 39b8d1e304b..246b12a9380 100644 --- a/src/devices/cpu/g65816/g65816.h +++ b/src/devices/cpu/g65816/g65816.h @@ -70,8 +70,8 @@ protected: g65816_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type, address_map_constructor internal); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -1570,11 +1570,11 @@ public: void set_5a22_map(); - void _5a22_map(address_map &map); + void _5a22_map(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_state_interface overrides virtual void state_import(const device_state_entry &entry) override; diff --git a/src/devices/cpu/gigatron/gigatron.h b/src/devices/cpu/gigatron/gigatron.h index ddf87eb195a..23c505c24c9 100644 --- a/src/devices/cpu/gigatron/gigatron.h +++ b/src/devices/cpu/gigatron/gigatron.h @@ -35,8 +35,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/h16/hd641016.h b/src/devices/cpu/h16/hd641016.h index 1c93f5a2ff3..bc73b3f68f7 100644 --- a/src/devices/cpu/h16/hd641016.h +++ b/src/devices/cpu/h16/hd641016.h @@ -89,8 +89,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) / 2; } @@ -110,8 +110,8 @@ private: u8 global_bank_mask() const { return BIT(m_bmr, 4) ? 7 : (2 << (m_bmr & 3)) - 1; } // internal maps - void ram_map(address_map &map); - void io_map(address_map &map); + void ram_map(address_map &map) ATTR_COLD; + void io_map(address_map &map) ATTR_COLD; // address spaces address_space_config m_program_config; diff --git a/src/devices/cpu/h6280/h6280.h b/src/devices/cpu/h6280/h6280.h index 37b863dcf1f..f1b327b47b8 100644 --- a/src/devices/cpu/h6280/h6280.h +++ b/src/devices/cpu/h6280/h6280.h @@ -75,10 +75,10 @@ protected: }; // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -355,7 +355,7 @@ protected: uint8_t m_io_buffer; /* last value written to the PSG, timer, and interrupt pages */ // internal registers - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; uint8_t irq_status_r(offs_t offset); void irq_status_w(offs_t offset, uint8_t data); diff --git a/src/devices/cpu/h8/gt913.h b/src/devices/cpu/h8/gt913.h index e2d27bdf8a3..35fba6e4901 100644 --- a/src/devices/cpu/h8/gt913.h +++ b/src/devices/cpu/h8/gt913.h @@ -61,11 +61,11 @@ protected: virtual space_config_vector memory_space_config() const override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void do_exec_full() override; virtual void do_exec_partial() override; diff --git a/src/devices/cpu/h8/h8.h b/src/devices/cpu/h8/h8.h index a359855026a..c1606e28217 100644 --- a/src/devices/cpu/h8/h8.h +++ b/src/devices/cpu/h8/h8.h @@ -136,8 +136,8 @@ protected: // device_t implementation virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual bool cpu_is_interruptible() const override { return true; } diff --git a/src/devices/cpu/h8/h83002.h b/src/devices/cpu/h8/h83002.h index 19bbbc12bc0..c0d0dc53f19 100644 --- a/src/devices/cpu/h8/h83002.h +++ b/src/devices/cpu/h8/h83002.h @@ -87,11 +87,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83003.h b/src/devices/cpu/h8/h83003.h index 34597c07048..9953da73aab 100644 --- a/src/devices/cpu/h8/h83003.h +++ b/src/devices/cpu/h8/h83003.h @@ -97,11 +97,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83006.h b/src/devices/cpu/h8/h83006.h index 883452ce23c..70075658da0 100644 --- a/src/devices/cpu/h8/h83006.h +++ b/src/devices/cpu/h8/h83006.h @@ -80,11 +80,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83008.h b/src/devices/cpu/h8/h83008.h index 30f62b539d0..bd859e134f3 100644 --- a/src/devices/cpu/h8/h83008.h +++ b/src/devices/cpu/h8/h83008.h @@ -77,11 +77,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83032.h b/src/devices/cpu/h8/h83032.h index 0075625b325..f920205c047 100644 --- a/src/devices/cpu/h8/h83032.h +++ b/src/devices/cpu/h8/h83032.h @@ -87,11 +87,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83042.h b/src/devices/cpu/h8/h83042.h index c14bb217232..78db0b10568 100644 --- a/src/devices/cpu/h8/h83042.h +++ b/src/devices/cpu/h8/h83042.h @@ -95,11 +95,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83048.h b/src/devices/cpu/h8/h83048.h index 668e7996446..52c726cb09e 100644 --- a/src/devices/cpu/h8/h83048.h +++ b/src/devices/cpu/h8/h83048.h @@ -99,11 +99,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83217.h b/src/devices/cpu/h8/h83217.h index ba1cc717fd0..99f3e9c76d1 100644 --- a/src/devices/cpu/h8/h83217.h +++ b/src/devices/cpu/h8/h83217.h @@ -83,11 +83,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8325.h b/src/devices/cpu/h8/h8325.h index de711cadd2a..7673cdd20f4 100644 --- a/src/devices/cpu/h8/h8325.h +++ b/src/devices/cpu/h8/h8325.h @@ -83,11 +83,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h83337.h b/src/devices/cpu/h8/h83337.h index 0a732b2e11a..60463f22c9a 100644 --- a/src/devices/cpu/h8/h83337.h +++ b/src/devices/cpu/h8/h83337.h @@ -93,11 +93,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8_adc.h b/src/devices/cpu/h8/h8_adc.h index 2ea510e6c4a..66f9da51d58 100644 --- a/src/devices/cpu/h8/h8_adc.h +++ b/src/devices/cpu/h8/h8_adc.h @@ -77,8 +77,8 @@ protected: bool m_analog_powered, m_adtrg; u64 m_next_event; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void sampling(); void start_conversion(); diff --git a/src/devices/cpu/h8/h8_dma.h b/src/devices/cpu/h8/h8_dma.h index 20858847082..0a4426cf29e 100644 --- a/src/devices/cpu/h8/h8_dma.h +++ b/src/devices/cpu/h8/h8_dma.h @@ -76,8 +76,8 @@ protected: required_device<h8_device> m_cpu; optional_device_array<h8gen_dma_channel_device, 4> m_dmach; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual u8 active_channels() const = 0; @@ -125,8 +125,8 @@ protected: u8 m_dmawer, m_dmatcr; u16 m_dmabcr; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; u8 active_channels() const override; }; @@ -192,8 +192,8 @@ protected: u16 m_ioar[2], m_etcr[2]; bool m_dreq; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void dma_done(int subchannel); virtual int channel_mode() const = 0; @@ -230,8 +230,8 @@ protected: bool m_has_adc; bool m_targets_sci1; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; void dma_done(int subchannel) override; int channel_mode() const override; @@ -260,8 +260,8 @@ protected: u16 m_dmacr; required_device<h8s_dma_device> m_dma; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; void dma_done(int subchannel) override; int channel_mode() const override; diff --git a/src/devices/cpu/h8/h8_dtc.h b/src/devices/cpu/h8/h8_dtc.h index 8709fe72ede..0d5d1e70dcf 100644 --- a/src/devices/cpu/h8/h8_dtc.h +++ b/src/devices/cpu/h8/h8_dtc.h @@ -61,8 +61,8 @@ protected: int m_irq; h8_dtc_state m_states[92]; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; u8 m_dtcer[6], m_dtvecr; int m_cur_active_vector; diff --git a/src/devices/cpu/h8/h8_intc.h b/src/devices/cpu/h8/h8_intc.h index d5ef4c5574f..7b39e1953a3 100644 --- a/src/devices/cpu/h8/h8_intc.h +++ b/src/devices/cpu/h8/h8_intc.h @@ -63,8 +63,8 @@ protected: h8_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void get_priority(int vect, int &icr_pri, int &ipr_pri) const; void update_irq_state(); @@ -106,8 +106,8 @@ protected: h8h_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void get_priority(int vect, int &icr_pri, int &ipr_pri) const override; }; @@ -132,8 +132,8 @@ private: static const int vector_to_slot[]; u8 m_ipr[11]; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void get_priority(int vect, int &icr_pri, int &ipr_pri) const override; virtual void update_irq_types() override; @@ -151,7 +151,7 @@ public: void clear_interrupt(int vector); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(H8_INTC, h8_intc_device) diff --git a/src/devices/cpu/h8/h8_port.h b/src/devices/cpu/h8/h8_port.h index 0416fd423f0..5f6b46368b2 100644 --- a/src/devices/cpu/h8/h8_port.h +++ b/src/devices/cpu/h8/h8_port.h @@ -50,8 +50,8 @@ protected: u8 m_dr; s32 m_last_output; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void update_output(); }; diff --git a/src/devices/cpu/h8/h8_sci.h b/src/devices/cpu/h8/h8_sci.h index 5a3671e63ab..53a319ecefe 100644 --- a/src/devices/cpu/h8/h8_sci.h +++ b/src/devices/cpu/h8/h8_sci.h @@ -122,8 +122,8 @@ protected: std::string m_last_clock_message; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; TIMER_CALLBACK_MEMBER(sync_tick); diff --git a/src/devices/cpu/h8/h8_timer16.h b/src/devices/cpu/h8/h8_timer16.h index 2051bbe59fd..aa807bd85e6 100644 --- a/src/devices/cpu/h8/h8_timer16.h +++ b/src/devices/cpu/h8/h8_timer16.h @@ -116,8 +116,8 @@ protected: h8_timer16_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void update_counter(u64 cur_time = 0); void recalc_event(u64 cur_time = 0); @@ -158,8 +158,8 @@ protected: virtual void isr_update(u8 value) override; virtual u8 isr_to_sr() const override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: u8 m_tcsr; @@ -271,7 +271,7 @@ protected: u8 m_default_tstr; u8 m_tstr; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void device_reset_after_children() override; }; diff --git a/src/devices/cpu/h8/h8_timer8.h b/src/devices/cpu/h8/h8_timer8.h index 65468a76a5d..9ed4a06d6e4 100644 --- a/src/devices/cpu/h8/h8_timer8.h +++ b/src/devices/cpu/h8/h8_timer8.h @@ -98,8 +98,8 @@ protected: h8_timer8_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void update_counter(u64 cur_time = 0, u64 delta = 0); void recalc_event(u64 cur_time = 0); diff --git a/src/devices/cpu/h8/h8_watchdog.h b/src/devices/cpu/h8/h8_watchdog.h index 7516816f3bc..73fedbce1b1 100644 --- a/src/devices/cpu/h8/h8_watchdog.h +++ b/src/devices/cpu/h8/h8_watchdog.h @@ -39,8 +39,8 @@ public: void rst_w(offs_t offset, u16 data, u16 mem_mask = ~0); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: enum { diff --git a/src/devices/cpu/h8/h8s2245.h b/src/devices/cpu/h8/h8s2245.h index fd01c71b928..5f2d489a7b7 100644 --- a/src/devices/cpu/h8/h8s2245.h +++ b/src/devices/cpu/h8/h8s2245.h @@ -103,11 +103,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8s2319.h b/src/devices/cpu/h8/h8s2319.h index 357887d859b..6b82f963afc 100644 --- a/src/devices/cpu/h8/h8s2319.h +++ b/src/devices/cpu/h8/h8s2319.h @@ -103,11 +103,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8s2329.h b/src/devices/cpu/h8/h8s2329.h index e0c6bace852..ac1940cfb62 100644 --- a/src/devices/cpu/h8/h8s2329.h +++ b/src/devices/cpu/h8/h8s2329.h @@ -47,8 +47,8 @@ protected: required_device<h8_port_device> m_port6; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map_2321(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map_2321(address_map &map) ATTR_COLD; }; class h8s2320_device : public h8s2321_device { @@ -66,10 +66,10 @@ protected: h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u32 rom_size, u32 ram_size); - virtual void device_add_mconfig(machine_config &config) override; - void map_2320(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map_2320(address_map &map) ATTR_COLD; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8s2357.h b/src/devices/cpu/h8/h8s2357.h index 3217f8dbf87..7d7fc415b72 100644 --- a/src/devices/cpu/h8/h8s2357.h +++ b/src/devices/cpu/h8/h8s2357.h @@ -111,11 +111,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/h8s2600.h b/src/devices/cpu/h8/h8s2600.h index cb54f24d85a..86b5089e628 100644 --- a/src/devices/cpu/h8/h8s2600.h +++ b/src/devices/cpu/h8/h8s2600.h @@ -24,8 +24,8 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void do_exec_full() override; virtual void do_exec_partial() override; diff --git a/src/devices/cpu/h8/h8s2655.h b/src/devices/cpu/h8/h8s2655.h index d92a1e8c5bc..80a55b2d234 100644 --- a/src/devices/cpu/h8/h8s2655.h +++ b/src/devices/cpu/h8/h8s2655.h @@ -102,11 +102,11 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; - void map(address_map &map); + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8/swx00.h b/src/devices/cpu/h8/swx00.h index 76d2006e913..256dc497625 100644 --- a/src/devices/cpu/h8/swx00.h +++ b/src/devices/cpu/h8/swx00.h @@ -120,7 +120,7 @@ protected: virtual void irq_setup() override; virtual void internal_update(u64 current_time) override; virtual void notify_standby(int state) override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual space_config_vector memory_space_config() const override; u16 s_r(offs_t offset); @@ -140,10 +140,10 @@ protected: void cmah_default_w(u8 data); void txd_default_w(u8 data); - void map(address_map &map); + void map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; }; diff --git a/src/devices/cpu/h8500/h8500.h b/src/devices/cpu/h8500/h8500.h index 6c5fb06a597..ea71f0e70d3 100644 --- a/src/devices/cpu/h8500/h8500.h +++ b/src/devices/cpu/h8500/h8500.h @@ -25,8 +25,8 @@ protected: // device-level overrides virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) / 2; } diff --git a/src/devices/cpu/h8500/h8510.h b/src/devices/cpu/h8500/h8510.h index 1cbefe87aa3..48db52b624f 100644 --- a/src/devices/cpu/h8500/h8510.h +++ b/src/devices/cpu/h8500/h8510.h @@ -14,7 +14,7 @@ protected: h8510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hd6415108_device : public h8510_device diff --git a/src/devices/cpu/h8500/h8520.h b/src/devices/cpu/h8500/h8520.h index 7f66327c796..749de392b69 100644 --- a/src/devices/cpu/h8500/h8520.h +++ b/src/devices/cpu/h8500/h8520.h @@ -14,7 +14,7 @@ protected: h8520_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hd6435208_device : public h8520_device diff --git a/src/devices/cpu/h8500/h8532.h b/src/devices/cpu/h8500/h8532.h index 71ec652a465..d508ea09092 100644 --- a/src/devices/cpu/h8500/h8532.h +++ b/src/devices/cpu/h8500/h8532.h @@ -14,7 +14,7 @@ protected: h8532_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hd6435328_device : public h8532_device diff --git a/src/devices/cpu/h8500/h8534.h b/src/devices/cpu/h8500/h8534.h index 2fad7985a70..9c7deea594c 100644 --- a/src/devices/cpu/h8500/h8534.h +++ b/src/devices/cpu/h8500/h8534.h @@ -15,10 +15,10 @@ protected: h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); - void register_field_map(address_map &map); + void register_field_map(address_map &map) ATTR_COLD; private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hd6435348_device : public h8534_device @@ -41,7 +41,7 @@ protected: h8536_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hd6435368_device : public h8536_device diff --git a/src/devices/cpu/hcd62121/hcd62121.h b/src/devices/cpu/hcd62121/hcd62121.h index 44adef412a6..51404f95318 100644 --- a/src/devices/cpu/hcd62121/hcd62121.h +++ b/src/devices/cpu/hcd62121/hcd62121.h @@ -36,8 +36,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 4; } diff --git a/src/devices/cpu/hd61700/hd61700.h b/src/devices/cpu/hd61700/hd61700.h index 4ffb595f2f8..922817e7dd0 100644 --- a/src/devices/cpu/hd61700/hd61700.h +++ b/src/devices/cpu/hd61700/hd61700.h @@ -45,8 +45,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/hmcs40/hmcs40.h b/src/devices/cpu/hmcs40/hmcs40.h index e17bd020aa7..c81ac756829 100644 --- a/src/devices/cpu/hmcs40/hmcs40.h +++ b/src/devices/cpu/hmcs40/hmcs40.h @@ -106,8 +106,8 @@ protected: hmcs40_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, u16 polarity, int stack_levels, int pcwidth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } // 4 cycles per machine cycle @@ -125,11 +125,11 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // memory maps - void program_1k(address_map &map); - void program_2k(address_map &map); - void data_80x4(address_map &map); - void data_160x4(address_map &map); - void data_256x4(address_map &map); + void program_1k(address_map &map) ATTR_COLD; + void program_2k(address_map &map) ATTR_COLD; + void data_80x4(address_map &map) ATTR_COLD; + void data_160x4(address_map &map) ATTR_COLD; + void data_256x4(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_data_config; diff --git a/src/devices/cpu/hmcs400/hmcs400.h b/src/devices/cpu/hmcs400/hmcs400.h index 85fc1d96b61..cea24878743 100644 --- a/src/devices/cpu/hmcs400/hmcs400.h +++ b/src/devices/cpu/hmcs400/hmcs400.h @@ -93,8 +93,8 @@ protected: hmcs400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u32 rom_size, u32 ram_size); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_nvram_interface implementation virtual void nvram_default() override; @@ -117,8 +117,8 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // memory maps - void program_map(address_map &map); - void data_map(address_map &map); + void program_map(address_map &map) ATTR_COLD; + void data_map(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_data_config; diff --git a/src/devices/cpu/hpc/hpc.h b/src/devices/cpu/hpc/hpc.h index 5f73a0ee2e6..5bacbbe8211 100644 --- a/src/devices/cpu/hpc/hpc.h +++ b/src/devices/cpu/hpc/hpc.h @@ -25,8 +25,8 @@ protected: hpc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -63,7 +63,7 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; class hpc46104_device : public hpc_device @@ -77,7 +77,7 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/hphybrid/hphybrid.h b/src/devices/cpu/hphybrid/hphybrid.h index 0ab0071f267..89ea5d93561 100644 --- a/src/devices/cpu/hphybrid/hphybrid.h +++ b/src/devices/cpu/hphybrid/hphybrid.h @@ -98,8 +98,8 @@ protected: hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t addrwidth); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return m_r_cycles; } @@ -253,8 +253,8 @@ public: void set_9845_boot_mode(bool mode) { m_boot_mode = mode; } protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // TODO: fix virtual uint32_t execute_max_cycles() const noexcept override { return 237; } // FMP 15 @@ -278,7 +278,7 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; // device_execute_interface overrides // TODO: fix diff --git a/src/devices/cpu/ht1130/ht1130.h b/src/devices/cpu/ht1130/ht1130.h index 1f2f9b030b6..befb3ef07a3 100644 --- a/src/devices/cpu/ht1130/ht1130.h +++ b/src/devices/cpu/ht1130/ht1130.h @@ -41,8 +41,8 @@ public: protected: ht1130_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor data); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_run() override; virtual bool execute_input_edge_triggered(int inputnum) const noexcept override { return inputnum == HT1130_EXT_WAKEUP_LINE; } @@ -53,8 +53,8 @@ protected: virtual space_config_vector memory_space_config() const override; - void internal_map(address_map &map); - void internal_data_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; + void internal_data_map(address_map &map) ATTR_COLD; void tempram_w(offs_t offset, u8 data); void displayram_w(offs_t offset, u8 data); @@ -130,11 +130,11 @@ public: ht1190_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual u64 get_segs(u8 coms) override; private: - void internal_data_map_ht1190(address_map &map); + void internal_data_map_ht1190(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/i386/athlon.h b/src/devices/cpu/i386/athlon.h index 9d7acbbe6da..fe1f84026de 100644 --- a/src/devices/cpu/i386/athlon.h +++ b/src/devices/cpu/i386/athlon.h @@ -22,8 +22,8 @@ protected: virtual void cache_writeback() override; virtual void cache_invalidate() override; virtual void cache_clean() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void enter_smm() override; virtual void leave_smm() override; diff --git a/src/devices/cpu/i386/i386.h b/src/devices/cpu/i386/i386.h index e165e8e2606..4a3ad0cfbd0 100644 --- a/src/devices/cpu/i386/i386.h +++ b/src/devices/cpu/i386/i386.h @@ -45,8 +45,8 @@ protected: i386_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_data_width, int program_addr_width, int io_data_width); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_debug_setup() override; // device_execute_interface overrides @@ -1596,8 +1596,8 @@ public: protected: i486_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; class i486dx4_device : public i486_device @@ -1607,7 +1607,7 @@ public: i486dx4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; @@ -1624,8 +1624,8 @@ protected: virtual void execute_set_input(int inputnum, int state) override; virtual uint64_t opcode_rdmsr(bool &valid_msr) override; virtual void opcode_wrmsr(uint64_t data, bool &valid_msr) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; @@ -1636,8 +1636,8 @@ public: pentium_mmx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; @@ -1648,8 +1648,8 @@ public: mediagx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; @@ -1664,8 +1664,8 @@ protected: virtual uint64_t opcode_rdmsr(bool &valid_msr) override; virtual void opcode_wrmsr(uint64_t data, bool &valid_msr) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; @@ -1676,8 +1676,8 @@ public: pentium2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; @@ -1688,8 +1688,8 @@ public: pentium3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void opcode_cpuid() override; }; @@ -1704,8 +1704,8 @@ public: protected: virtual uint64_t opcode_rdmsr(bool &valid_msr) override; virtual void opcode_wrmsr(uint64_t data, bool &valid_msr) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; diff --git a/src/devices/cpu/i8008/i8008.h b/src/devices/cpu/i8008/i8008.h index 5b7882f7958..2e6701306a4 100644 --- a/src/devices/cpu/i8008/i8008.h +++ b/src/devices/cpu/i8008/i8008.h @@ -25,8 +25,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/i8085/i8085.h b/src/devices/cpu/i8085/i8085.h index 6b8755210c6..23772be54a1 100644 --- a/src/devices/cpu/i8085/i8085.h +++ b/src/devices/cpu/i8085/i8085.h @@ -66,8 +66,8 @@ protected: // device-level overrides virtual void device_config_complete() override; virtual void device_clock_changed() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 4; } diff --git a/src/devices/cpu/i8089/i8089.h b/src/devices/cpu/i8089/i8089.h index abb278625b8..3ebb3bc61af 100644 --- a/src/devices/cpu/i8089/i8089.h +++ b/src/devices/cpu/i8089/i8089.h @@ -52,9 +52,9 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void device_config_complete() override; - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -74,7 +74,7 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // optional information overrides - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; private: bool sysbus_width() const { return BIT(m_sysbus, 0); } diff --git a/src/devices/cpu/i8089/i8089_channel.h b/src/devices/cpu/i8089/i8089_channel.h index 8d002598b7b..a2481a97fb1 100644 --- a/src/devices/cpu/i8089/i8089_channel.h +++ b/src/devices/cpu/i8089/i8089_channel.h @@ -76,8 +76,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: diff --git a/src/devices/cpu/i86/i186.h b/src/devices/cpu/i86/i186.h index 72a3eb008e8..34a95ef1309 100644 --- a/src/devices/cpu/i86/i186.h +++ b/src/devices/cpu/i86/i186.h @@ -69,8 +69,8 @@ protected: virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks / 2); } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 2); } virtual void execute_run() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint8_t fetch() override; uint32_t update_pc() { return m_pc = (m_sregs[CS] << 4) + m_ip; } diff --git a/src/devices/cpu/i86/i286.h b/src/devices/cpu/i86/i286.h index 383d0a6adb9..cceb66fc931 100644 --- a/src/devices/cpu/i86/i286.h +++ b/src/devices/cpu/i86/i286.h @@ -90,8 +90,8 @@ protected: typedef device_delegate<uint32_t (bool)> a20_cb; virtual void execute_run() override; - virtual void device_reset() override; - virtual void device_start() override; + virtual void device_reset() override ATTR_COLD; + virtual void device_start() override ATTR_COLD; // device_state_interface overrides virtual void state_import(const device_state_entry &entry) override; diff --git a/src/devices/cpu/i86/i86.h b/src/devices/cpu/i86/i86.h index 917cac19dea..5f67265638e 100644 --- a/src/devices/cpu/i86/i86.h +++ b/src/devices/cpu/i86/i86.h @@ -111,8 +111,8 @@ protected: i8086_common_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -358,7 +358,7 @@ protected: i8086_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size); virtual void execute_run() override; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual uint8_t fetch() override; inline address_space *sreg_to_space(int sreg) const; virtual uint8_t read_byte(uint32_t addr) override; diff --git a/src/devices/cpu/i860/i860.h b/src/devices/cpu/i860/i860.h index 942880a3834..fcfa1ff875f 100644 --- a/src/devices/cpu/i860/i860.h +++ b/src/devices/cpu/i860/i860.h @@ -62,8 +62,8 @@ protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/i960/i960.h b/src/devices/cpu/i960/i960.h index ca7678c9418..12d71531d74 100644 --- a/src/devices/cpu/i960/i960.h +++ b/src/devices/cpu/i960/i960.h @@ -81,8 +81,8 @@ protected: enum { I960_RCACHE_SIZE = 4 }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } /* ???? TODO: Exact timing unknown */ diff --git a/src/devices/cpu/ie15/ie15.h b/src/devices/cpu/ie15/ie15.h index a0885ce55f1..771e2c0b326 100644 --- a/src/devices/cpu/ie15/ie15.h +++ b/src/devices/cpu/ie15/ie15.h @@ -27,8 +27,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/jaguar/jaguar.h b/src/devices/cpu/jaguar/jaguar.h index 34dff918fbe..245304f0774 100644 --- a/src/devices/cpu/jaguar/jaguar.h +++ b/src/devices/cpu/jaguar/jaguar.h @@ -67,8 +67,8 @@ protected: jaguar_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 version, bool isdsp, address_map_constructor io_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; // device_execute_interface overrides @@ -234,7 +234,7 @@ protected: void init_tables(); // I/O internal regs - void io_common_map(address_map &map); + void io_common_map(address_map &map) ATTR_COLD; // TODO: the m_io* stubs are conventionally given for allowing a correct register setup from vanilla 68k. // This is yet another reason about needing a bus device dispatcher for this system. u32 m_io_end; @@ -271,7 +271,7 @@ public: // construction/destruction jaguargpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); - void io_map(address_map &map); + void io_map(address_map &map) ATTR_COLD; protected: virtual void execute_run() override; @@ -288,7 +288,7 @@ public: // construction/destruction jaguardsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); - void io_map(address_map &map); + void io_map(address_map &map) ATTR_COLD; protected: virtual void execute_run() override; diff --git a/src/devices/cpu/ks0164/ks0164.h b/src/devices/cpu/ks0164/ks0164.h index 9cf77af7274..083f4bdad97 100644 --- a/src/devices/cpu/ks0164/ks0164.h +++ b/src/devices/cpu/ks0164/ks0164.h @@ -38,8 +38,8 @@ protected: u16 m_r[8]; u32 m_irq; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override; virtual uint32_t execute_max_cycles() const noexcept override; virtual void execute_run() override; diff --git a/src/devices/cpu/lc8670/lc8670.h b/src/devices/cpu/lc8670/lc8670.h index a6c443958bc..2f92c6c6e6c 100644 --- a/src/devices/cpu/lc8670/lc8670.h +++ b/src/devices/cpu/lc8670/lc8670.h @@ -82,7 +82,7 @@ public: template <typename... T> void set_lcd_update_cb(T &&... args) { m_lcd_update_func.set(std::forward<T>(args)...); } - void lc8670_internal_map(address_map &map); + void lc8670_internal_map(address_map &map) ATTR_COLD; protected: enum { @@ -91,8 +91,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/lh5801/lh5801.h b/src/devices/cpu/lh5801/lh5801.h index 5f77658ab47..841708d26f3 100644 --- a/src/devices/cpu/lh5801/lh5801.h +++ b/src/devices/cpu/lh5801/lh5801.h @@ -71,8 +71,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; } diff --git a/src/devices/cpu/lr35902/lr35902.h b/src/devices/cpu/lr35902/lr35902.h index 578e975cfce..d4fcd3a706f 100644 --- a/src/devices/cpu/lr35902/lr35902.h +++ b/src/devices/cpu/lr35902/lr35902.h @@ -64,8 +64,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/m37710/m37710.h b/src/devices/cpu/m37710/m37710.h index da888632f3e..9b634daf6b2 100644 --- a/src/devices/cpu/m37710/m37710.h +++ b/src/devices/cpu/m37710/m37710.h @@ -130,12 +130,12 @@ public: auto an7_cb() { return m_analog_cb[7].bind(); } protected: - void ad_register_map(address_map &map); - void uart0_register_map(address_map &map); - void uart1_register_map(address_map &map); - void timer_register_map(address_map &map); - void timer_6channel_register_map(address_map &map); - void irq_register_map(address_map &map); + void ad_register_map(address_map &map) ATTR_COLD; + void uart0_register_map(address_map &map) ATTR_COLD; + void uart1_register_map(address_map &map) ATTR_COLD; + void timer_register_map(address_map &map) ATTR_COLD; + void timer_6channel_register_map(address_map &map) ATTR_COLD; + void irq_register_map(address_map &map) ATTR_COLD; // internal registers template <int Base> uint8_t port_r(offs_t offset); @@ -202,8 +202,8 @@ protected: m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; } @@ -2147,7 +2147,7 @@ public: // construction/destruction m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; class m37702m2_device : public m37710_cpu_device @@ -2157,7 +2157,7 @@ public: m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; class m37710s4_device : public m37710_cpu_device @@ -2166,7 +2166,7 @@ public: // construction/destruction m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; class m37720s1_device : public m37710_cpu_device @@ -2175,7 +2175,7 @@ public: // construction/destruction m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; class m37730s2_device : public m37710_cpu_device @@ -2184,7 +2184,7 @@ public: // construction/destruction m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; class m37732s4_device : public m37710_cpu_device @@ -2193,7 +2193,7 @@ public: // construction/destruction m37732s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(M37702M2, m37702m2_device) diff --git a/src/devices/cpu/m6502/deco16.h b/src/devices/cpu/m6502/deco16.h index 63494f6b1d4..60c0e2a4eaf 100644 --- a/src/devices/cpu/m6502/deco16.h +++ b/src/devices/cpu/m6502/deco16.h @@ -28,7 +28,7 @@ protected: address_space_config io_config; virtual space_config_vector memory_space_config() const override; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; #define O(o) void o ## _full(); void o ## _partial() diff --git a/src/devices/cpu/m6502/gew12.h b/src/devices/cpu/m6502/gew12.h index aeb4db9c040..bc4f2a8ac59 100644 --- a/src/devices/cpu/m6502/gew12.h +++ b/src/devices/cpu/m6502/gew12.h @@ -21,10 +21,10 @@ public: template<offs_t Num> auto port_out_cb() { return m_out_cb[Num].bind(); } protected: - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void internal_update(u64 current_time) override; using m6502_mcu_device_base<m65c02_device>::internal_update; @@ -56,7 +56,7 @@ protected: void irq_update(); - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; u8 m_irq_pending, m_irq_enable; diff --git a/src/devices/cpu/m6502/gew7.h b/src/devices/cpu/m6502/gew7.h index fd29e7402c8..6a2a6de27eb 100644 --- a/src/devices/cpu/m6502/gew7.h +++ b/src/devices/cpu/m6502/gew7.h @@ -26,10 +26,10 @@ public: protected: - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void internal_update(u64 current_time) override; using m6502_mcu_device_base<m65c02_device>::internal_update; @@ -49,7 +49,7 @@ protected: u8 port_ddr_r(offs_t offset); void port_ddr_w(offs_t offset, u8 data); - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; u8 m_timer_stat, m_timer_en; u16 m_timer_count[2]; diff --git a/src/devices/cpu/m6502/m3745x.h b/src/devices/cpu/m6502/m3745x.h index bab3558e0a2..9f7bc5acc93 100644 --- a/src/devices/cpu/m6502/m3745x.h +++ b/src/devices/cpu/m6502/m3745x.h @@ -56,8 +56,8 @@ protected: m3745x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; // device_execute_interface overrides @@ -90,7 +90,7 @@ class m37450_device : public m3745x_device public: m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void m37450_map(address_map &map); + void m37450_map(address_map &map) ATTR_COLD; protected: m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); }; diff --git a/src/devices/cpu/m6502/m37640.h b/src/devices/cpu/m6502/m37640.h index 75e3d79494b..efd7077a426 100644 --- a/src/devices/cpu/m6502/m37640.h +++ b/src/devices/cpu/m6502/m37640.h @@ -24,13 +24,13 @@ public: m37640_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, u32 mode = 2); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: u32 m_mode; - void map(address_map &map); + void map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(M37640, m37640_device) diff --git a/src/devices/cpu/m6502/m4510.h b/src/devices/cpu/m6502/m4510.h index f357b237f50..c0e21977c2b 100644 --- a/src/devices/cpu/m6502/m4510.h +++ b/src/devices/cpu/m6502/m4510.h @@ -54,8 +54,8 @@ protected: uint8_t pullup, floating, dir, port, drive; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual bool memory_translate(int spacenum, int intention, offs_t &address, address_space *&target_space) override; inline uint32_t map(uint16_t adr) { diff --git a/src/devices/cpu/m6502/m50734.h b/src/devices/cpu/m6502/m50734.h index 94ade4ad585..a8c8a9a093c 100644 --- a/src/devices/cpu/m6502/m50734.h +++ b/src/devices/cpu/m6502/m50734.h @@ -77,8 +77,8 @@ public: protected: // device_t implementation virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } @@ -125,7 +125,7 @@ private: u8 timer_x_r(offs_t offset); void timer_x_w(offs_t offset, u8 data); - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; const address_space_config m_data_config; memory_access<16, 0, 0, ENDIANNESS_LITTLE>::specific m_data; diff --git a/src/devices/cpu/m6502/m5074x.h b/src/devices/cpu/m6502/m5074x.h index 2b860a56e83..f466f212573 100644 --- a/src/devices/cpu/m6502/m5074x.h +++ b/src/devices/cpu/m6502/m5074x.h @@ -54,8 +54,8 @@ protected: m5074x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; // device_execute_interface overrides (TODO: /8 in M50740A/41/52/57/58 SLW mode) @@ -96,7 +96,7 @@ protected: m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); private: - void m50740_map(address_map &map); + void m50740_map(address_map &map) ATTR_COLD; }; class m50741_device : public m5074x_device @@ -108,7 +108,7 @@ protected: m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); private: - void m50741_map(address_map &map); + void m50741_map(address_map &map) ATTR_COLD; }; class m50753_device : public m5074x_device @@ -130,15 +130,15 @@ protected: m50753_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual TIMER_CALLBACK_MEMBER(adc_complete) override; private: - void m50753_map(address_map &map); + void m50753_map(address_map &map) ATTR_COLD; uint8_t ad_r(); uint8_t in_r(); diff --git a/src/devices/cpu/m6502/m6500_1.h b/src/devices/cpu/m6502/m6500_1.h index 15af85ff417..0736e927ae5 100644 --- a/src/devices/cpu/m6502/m6500_1.h +++ b/src/devices/cpu/m6502/m6500_1.h @@ -77,8 +77,8 @@ protected: M6500_1_LC }; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override; virtual u64 execute_cycles_to_clocks(u64 cycles) const noexcept override; @@ -109,7 +109,7 @@ protected: TIMER_CALLBACK_MEMBER(set_cntr_in); void toggle_cntr(); - void memory_map(address_map &map); + void memory_map(address_map &map) ATTR_COLD; private: devcb_read8::array<4> m_port_in_cb; diff --git a/src/devices/cpu/m6502/m6502.h b/src/devices/cpu/m6502/m6502.h index 6d490e98af6..112630dfd50 100644 --- a/src/devices/cpu/m6502/m6502.h +++ b/src/devices/cpu/m6502/m6502.h @@ -94,8 +94,8 @@ protected: virtual void init(); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual bool cpu_is_interruptible() const override { return true; } diff --git a/src/devices/cpu/m6502/m6509.h b/src/devices/cpu/m6502/m6509.h index 4359c691c0e..383bfcc178a 100644 --- a/src/devices/cpu/m6502/m6509.h +++ b/src/devices/cpu/m6502/m6509.h @@ -36,8 +36,8 @@ protected: virtual void write_9(uint16_t adr, uint8_t val) override; }; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual offs_t pc_to_external(u16 pc) override; uint8_t bank_i, bank_y; diff --git a/src/devices/cpu/m6502/m6510.h b/src/devices/cpu/m6502/m6510.h index 6f9bac1fff8..b7d4e585b86 100644 --- a/src/devices/cpu/m6502/m6510.h +++ b/src/devices/cpu/m6502/m6510.h @@ -49,8 +49,8 @@ protected: uint8_t pullup, floating, dir, port, drive; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; uint8_t dir_r(); void dir_w(uint8_t data); @@ -79,7 +79,7 @@ public: m6508_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; class mi_6508 : public memory_interface { public: diff --git a/src/devices/cpu/m6502/m65ce02.h b/src/devices/cpu/m6502/m65ce02.h index 6e27c66e010..3cf488208a1 100644 --- a/src/devices/cpu/m6502/m65ce02.h +++ b/src/devices/cpu/m6502/m65ce02.h @@ -30,8 +30,8 @@ protected: uint16_t B; /* Zero page base address (always xx00) */ virtual void init() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void state_import(const device_state_entry &entry) override; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; diff --git a/src/devices/cpu/m6502/m740.h b/src/devices/cpu/m6502/m740.h index de483675f81..6c64c0af79c 100644 --- a/src/devices/cpu/m6502/m740.h +++ b/src/devices/cpu/m6502/m740.h @@ -37,8 +37,8 @@ public: }; protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; diff --git a/src/devices/cpu/m6502/r65c19.h b/src/devices/cpu/m6502/r65c19.h index 6f018fb661b..7c53a74ecc4 100644 --- a/src/devices/cpu/m6502/r65c19.h +++ b/src/devices/cpu/m6502/r65c19.h @@ -23,8 +23,8 @@ public: protected: r65c19_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; @@ -114,8 +114,8 @@ protected: virtual space_config_vector memory_space_config() const override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; u8 pbs_r(); void pbs_w(u8 data); @@ -156,7 +156,7 @@ public: l2800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(R65C19, r65c19_device) diff --git a/src/devices/cpu/m6502/rp2a03.h b/src/devices/cpu/m6502/rp2a03.h index 3f5d952065a..4112bbbe152 100644 --- a/src/devices/cpu/m6502/rp2a03.h +++ b/src/devices/cpu/m6502/rp2a03.h @@ -45,14 +45,14 @@ class rp2a03_device : public rp2a03_core_device, public device_mixer_interface { public: rp2a03_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void rp2a03_map(address_map &map); + void rp2a03_map(address_map &map) ATTR_COLD; protected: rp2a03_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); required_device<nesapu_device> m_apu; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; void apu_irq(int state); uint8_t apu_read_mem(offs_t offset); @@ -64,7 +64,7 @@ public: rp2a03g_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; }; /* These are the official XTAL values and clock rates used by Nintendo for diff --git a/src/devices/cpu/m6502/st2204.h b/src/devices/cpu/m6502/st2204.h index 63e537309f2..ba4ed6e9ee4 100644 --- a/src/devices/cpu/m6502/st2204.h +++ b/src/devices/cpu/m6502/st2204.h @@ -37,8 +37,8 @@ public: protected: st2204_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor int_map); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual u16 st2xxx_ireq_mask() const override { return 0x0f7f; } virtual const char *st2xxx_irq_name(int i) const override; @@ -59,7 +59,7 @@ protected: virtual u8 st2xxx_uctr_mask() const override { return 0x0f; } virtual u8 st2xxx_bctr_mask() const override { return 0x87; } - void common_map(address_map &map); + void common_map(address_map &map) ATTR_COLD; private: class mi_st2204 : public mi_st2xxx { @@ -126,7 +126,7 @@ private: u8 dmem_r(offs_t offset); void dmem_w(offs_t offset, u8 data); - void int_map(address_map &map); + void int_map(address_map &map) ATTR_COLD; devcb_write8 m_dac_callback; @@ -154,7 +154,7 @@ protected: virtual u8 st2xxx_lctr_mask() const override { return 0xe0; } private: - void int_map(address_map &map); + void int_map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(ST2202, st2202_device) diff --git a/src/devices/cpu/m6502/st2205u.h b/src/devices/cpu/m6502/st2205u.h index bd73e481822..17cc7f18740 100644 --- a/src/devices/cpu/m6502/st2205u.h +++ b/src/devices/cpu/m6502/st2205u.h @@ -61,7 +61,7 @@ public: protected: st2205u_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; // sound stream update overrides virtual void sound_stream_update(sound_stream &stream, std::vector<read_stream_view> const &inputs, std::vector<write_stream_view> &outputs) override; @@ -138,7 +138,7 @@ protected: u8 mulh_r(); void mulh_w(u8 data); - void base_map(address_map &map); + void base_map(address_map &map) ATTR_COLD; sound_stream *m_stream; @@ -183,8 +183,8 @@ public: st2205u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual u16 st2xxx_ireq_mask() const override { return 0xdfff; } virtual const char *st2xxx_irq_name(int i) const override; @@ -244,7 +244,7 @@ private: u8 bmem_r(offs_t offset); void bmem_w(offs_t offset, u8 data); - void int_map(address_map &map); + void int_map(address_map &map) ATTR_COLD; u8 m_lbuf; u8 m_lpal_index; @@ -257,7 +257,7 @@ public: st2302u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual u16 st2xxx_ireq_mask() const override { return 0xd37f; } // ??? virtual const char *st2xxx_irq_name(int i) const override; @@ -309,7 +309,7 @@ private: u8 dmem_r(offs_t offset); void dmem_w(offs_t offset, u8 data); - void int_map(address_map &map); + void int_map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(ST2205U, st2205u_device) diff --git a/src/devices/cpu/m6502/st2xxx.h b/src/devices/cpu/m6502/st2xxx.h index 6f63866f2de..5189cb24a5d 100644 --- a/src/devices/cpu/m6502/st2xxx.h +++ b/src/devices/cpu/m6502/st2xxx.h @@ -88,7 +88,7 @@ protected: st2xxx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); virtual space_config_vector memory_space_config() const override; - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual u16 st2xxx_ireq_mask() const = 0; virtual const char *st2xxx_irq_name(int i) const = 0; diff --git a/src/devices/cpu/m6502/xavix.h b/src/devices/cpu/m6502/xavix.h index ccab73f75d4..1afa58d365c 100644 --- a/src/devices/cpu/m6502/xavix.h +++ b/src/devices/cpu/m6502/xavix.h @@ -168,8 +168,8 @@ protected: uint32_t adr_with_codebank(uint16_t adr) { return adr | (get_codebank() << 16); } - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual offs_t pc_to_external(u16 pc) override; virtual void state_import(const device_state_entry &entry) override; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; diff --git a/src/devices/cpu/m6502/xavix2000.h b/src/devices/cpu/m6502/xavix2000.h index c5e3113e840..1416d919328 100644 --- a/src/devices/cpu/m6502/xavix2000.h +++ b/src/devices/cpu/m6502/xavix2000.h @@ -23,7 +23,7 @@ protected: virtual void do_exec_full() override; virtual void do_exec_partial() override; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void state_import(const device_state_entry &entry) override; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; diff --git a/src/devices/cpu/m6800/m6800.h b/src/devices/cpu/m6800/m6800.h index 427db624aa7..d7db49864e8 100644 --- a/src/devices/cpu/m6800/m6800.h +++ b/src/devices/cpu/m6800/m6800.h @@ -42,8 +42,8 @@ protected: m6800_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, const m6800_cpu_device::op_func *insn, const u8 *cycles, address_map_constructor internal); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -375,7 +375,7 @@ protected: bool m_ram_enable; private: - void ram_map(address_map &map); + void ram_map(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/m6800/m6801.h b/src/devices/cpu/m6800/m6801.h index e7799f4807d..98f8e5c081a 100644 --- a/src/devices/cpu/m6800/m6801.h +++ b/src/devices/cpu/m6800/m6801.h @@ -72,8 +72,8 @@ protected: m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, const m6800_cpu_device::op_func *insn, const u8 *cycles, address_map_constructor internal, int nvram_bytes); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_nvram_interface implementation virtual void nvram_default() override; @@ -128,10 +128,10 @@ protected: virtual void rcr_w(u8 data); u8 ff_r(); - void m6801_io(address_map &map); - void m6801_mem(address_map &map); - void hd6801_mem(address_map &map); - void m6803_mem(address_map &map); + void m6801_io(address_map &map) ATTR_COLD; + void m6801_mem(address_map &map) ATTR_COLD; + void hd6801_mem(address_map &map) ATTR_COLD; + void m6803_mem(address_map &map) ATTR_COLD; devcb_read8::array<4> m_in_port_func; devcb_write8::array<4> m_out_port_func; @@ -210,12 +210,12 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: - void m6801u4_io(address_map &map); - void m6801u4_mem(address_map &map); + void m6801u4_io(address_map &map) ATTR_COLD; + void m6801u4_mem(address_map &map) ATTR_COLD; virtual void check_irq2() override; virtual void set_timer_event() override; @@ -357,14 +357,14 @@ protected: virtual bool nvram_read(util::read_stream &file) override; virtual bool nvram_write(util::write_stream &file) override; - void hd6301x_io(address_map &map); - void hd6303x_io(address_map &map); - void hd6301x_mem(address_map &map); - void hd6303x_mem(address_map &map); + void hd6301x_io(address_map &map) ATTR_COLD; + void hd6303x_io(address_map &map) ATTR_COLD; + void hd6301x_mem(address_map &map) ATTR_COLD; + void hd6303x_mem(address_map &map) ATTR_COLD; // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void write_port2() override; @@ -435,7 +435,7 @@ public: protected: hd6301x0_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal, int nvram_bytes); - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; @@ -464,14 +464,14 @@ class hd6301y_cpu_device : public hd6301x_cpu_device protected: hd6301y_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal, int nvram_bytes); - void hd6301y_io(address_map &map); - void hd6303y_io(address_map &map); - void hd6301y_mem(address_map &map); - void hd6303y_mem(address_map &map); + void hd6301y_io(address_map &map) ATTR_COLD; + void hd6303y_io(address_map &map) ATTR_COLD; + void hd6301y_mem(address_map &map) ATTR_COLD; + void hd6303y_mem(address_map &map) ATTR_COLD; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_set_input(int inputnum, int state) override; diff --git a/src/devices/cpu/m68000/fscpu32.h b/src/devices/cpu/m68000/fscpu32.h index b4e26a122eb..52045e7964f 100644 --- a/src/devices/cpu/m68000/fscpu32.h +++ b/src/devices/cpu/m68000/fscpu32.h @@ -16,7 +16,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; protected: fscpu32_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, diff --git a/src/devices/cpu/m68000/m68000.h b/src/devices/cpu/m68000/m68000.h index 3d1b939d814..2279622d896 100644 --- a/src/devices/cpu/m68000/m68000.h +++ b/src/devices/cpu/m68000/m68000.h @@ -40,8 +40,8 @@ public: virtual void state_import(const device_state_entry &entry) override; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; virtual space_config_vector memory_space_config() const override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void set_current_mmu(mmu *m); @@ -188,7 +188,7 @@ protected: void do_post_run(); // cpu space map with autovectors - void default_autovectors_map(address_map &map); + void default_autovectors_map(address_map &map) ATTR_COLD; // helper for interrupt vector access void start_interrupt_vector_lookup(); diff --git a/src/devices/cpu/m68000/m68000mcu.h b/src/devices/cpu/m68000/m68000mcu.h index 07a50ff5977..aa6d8309c44 100644 --- a/src/devices/cpu/m68000/m68000mcu.h +++ b/src/devices/cpu/m68000/m68000mcu.h @@ -28,7 +28,7 @@ protected: void internal_update(); virtual void internal_update(uint64_t current_time) = 0; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; void set_current_interrupt_level(u32 level); }; diff --git a/src/devices/cpu/m68000/m68000musashi.h b/src/devices/cpu/m68000/m68000musashi.h index 0d025d05e44..cea6e63216a 100644 --- a/src/devices/cpu/m68000/m68000musashi.h +++ b/src/devices/cpu/m68000/m68000musashi.h @@ -19,7 +19,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68000MUSASHI, m68000msh_device) diff --git a/src/devices/cpu/m68000/m68008.h b/src/devices/cpu/m68000/m68008.h index 170d5eeea81..84c3cd91071 100644 --- a/src/devices/cpu/m68000/m68008.h +++ b/src/devices/cpu/m68000/m68008.h @@ -27,7 +27,7 @@ public: void set_current_mmu(mmu8 *m); // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; protected: // Typed constructor @@ -67,7 +67,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68008, m68008_device) diff --git a/src/devices/cpu/m68000/m68010.h b/src/devices/cpu/m68000/m68010.h index 154ec0160f3..a607e641e3c 100644 --- a/src/devices/cpu/m68000/m68010.h +++ b/src/devices/cpu/m68000/m68010.h @@ -19,7 +19,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68010, m68010_device) diff --git a/src/devices/cpu/m68000/m68020.h b/src/devices/cpu/m68000/m68020.h index c582b7fbd0f..d392d59ad59 100644 --- a/src/devices/cpu/m68000/m68020.h +++ b/src/devices/cpu/m68000/m68020.h @@ -19,7 +19,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68020_device : public m68000_musashi_device @@ -34,7 +34,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68020fpu_device : public m68000_musashi_device @@ -49,7 +49,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68020pmmu_device : public m68000_musashi_device @@ -64,7 +64,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68020hmmu_device : public m68000_musashi_device @@ -81,7 +81,7 @@ public: virtual bool memory_translate(int space, int intention, offs_t &address, address_space *&target_space) override; // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68EC020, m68ec020_device) diff --git a/src/devices/cpu/m68000/m68030.h b/src/devices/cpu/m68000/m68030.h index 6817c990fa6..08fedda2e17 100644 --- a/src/devices/cpu/m68000/m68030.h +++ b/src/devices/cpu/m68000/m68030.h @@ -19,7 +19,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68030_device : public m68000_musashi_device @@ -34,7 +34,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68EC030, m68ec030_device) diff --git a/src/devices/cpu/m68000/m68040.h b/src/devices/cpu/m68000/m68040.h index 538772f7f15..d4a562757dc 100644 --- a/src/devices/cpu/m68000/m68040.h +++ b/src/devices/cpu/m68000/m68040.h @@ -19,7 +19,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68lc040_device : public m68000_musashi_device @@ -34,7 +34,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class m68040_device : public m68000_musashi_device @@ -49,7 +49,7 @@ public: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68EC040, m68ec040_device) diff --git a/src/devices/cpu/m68000/m68kcommon.h b/src/devices/cpu/m68000/m68kcommon.h index 604cd97ad52..c92b1926a49 100644 --- a/src/devices/cpu/m68000/m68kcommon.h +++ b/src/devices/cpu/m68000/m68kcommon.h @@ -48,7 +48,7 @@ public: }; static constexpr u8 autovector(int level) { return 0x18 + level; } - void autovectors_map(address_map &map); + void autovectors_map(address_map &map) ATTR_COLD; void set_cpu_space(int space_id) { m_cpu_space_id = space_id; } void set_interrupt_mixer(bool enable) { m_interrupt_mixer = enable; } diff --git a/src/devices/cpu/m68000/m68kmusashi.h b/src/devices/cpu/m68000/m68kmusashi.h index 53670da8b33..a1e24c0af03 100644 --- a/src/devices/cpu/m68000/m68kmusashi.h +++ b/src/devices/cpu/m68000/m68kmusashi.h @@ -100,9 +100,9 @@ protected: virtual bool execute_input_edge_triggered(int inputnum) const noexcept override { return inputnum == M68K_LINE_BUSERROR || (m_interrupt_mixer ? inputnum == M68K_IRQ_7 : false); } // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; virtual void device_pre_save() override; virtual void device_post_load() override; @@ -295,7 +295,7 @@ protected: void init_cpu_scc68070(void); void init_cpu_coldfire(void); - void default_autovectors_map(address_map &map); + void default_autovectors_map(address_map &map) ATTR_COLD; void m68ki_exception_interrupt(u32 int_level); diff --git a/src/devices/cpu/m68000/mcf5206e.h b/src/devices/cpu/m68000/mcf5206e.h index 7455a8c3119..425d54504eb 100644 --- a/src/devices/cpu/m68000/mcf5206e.h +++ b/src/devices/cpu/m68000/mcf5206e.h @@ -20,7 +20,7 @@ public: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(MCF5206E, mcf5206e_device) diff --git a/src/devices/cpu/m68000/scc68070.h b/src/devices/cpu/m68000/scc68070.h index 031d9542b14..06ab08e20bc 100644 --- a/src/devices/cpu/m68000/scc68070.h +++ b/src/devices/cpu/m68000/scc68070.h @@ -16,7 +16,7 @@ protected: virtual u32 execute_max_cycles() const noexcept override { return 158; } // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; scc68070_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, const device_type type, address_map_constructor internal_map); diff --git a/src/devices/cpu/m68000/tmp68301.h b/src/devices/cpu/m68000/tmp68301.h index 2e308afa6ac..c521f6b6c1f 100644 --- a/src/devices/cpu/m68000/tmp68301.h +++ b/src/devices/cpu/m68000/tmp68301.h @@ -33,16 +33,16 @@ protected: devcb_write16 m_parallel_w_cb; devcb_write_line::array<3> m_tx_cb; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; void execute_set_input(int inputnum, int state) override; void internal_update(uint64_t current_time = 0) override; virtual u8 base_timer_irq() const noexcept { return 4; } - void internal_map(address_map &map); - void cpu_space_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; + void cpu_space_map(address_map &map) ATTR_COLD; // Address decoder u8 m_amar[2], m_aamr[2], m_aacr[3]; diff --git a/src/devices/cpu/m6805/m6805.h b/src/devices/cpu/m6805/m6805.h index 1153fe87f56..4af76eaf403 100644 --- a/src/devices/cpu/m6805/m6805.h +++ b/src/devices/cpu/m6805/m6805.h @@ -126,8 +126,8 @@ protected: address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -318,7 +318,7 @@ public: protected: // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void interrupt_vector() override; @@ -343,7 +343,7 @@ protected: address_map_constructor internal_map); // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual bool execute_input_edge_triggered(int inputnum) const noexcept override { return inputnum == INPUT_LINE_NMI; } @@ -361,7 +361,7 @@ public: hd6305v0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; // ======================> hd6305y2_device @@ -373,7 +373,7 @@ public: hd6305y2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; // ======================> hd63705z0_device @@ -385,7 +385,7 @@ public: hd63705z0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; #define M6805_IRQ_LINE 0 diff --git a/src/devices/cpu/m6805/m68705.h b/src/devices/cpu/m6805/m68705.h index e2406ae1a29..97ee495123b 100644 --- a/src/devices/cpu/m6805/m68705.h +++ b/src/devices/cpu/m6805/m68705.h @@ -168,7 +168,7 @@ protected: m6805_hmos_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size); void map(address_map &map) { internal_map(map); } - virtual void internal_map(address_map &map); + virtual void internal_map(address_map &map) ATTR_COLD; template <std::size_t N> void set_port_open_drain(bool value); template <std::size_t N> void set_port_mask(u8 mask); @@ -187,8 +187,8 @@ protected: u8 arr_r(); void arr_w(u8 data); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual void interrupt() override; @@ -235,7 +235,7 @@ protected: { } - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; }; class m68705_device : public m6805_hmos_device, public device_nvram_interface @@ -251,7 +251,7 @@ public: }; protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; m68705_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size); @@ -261,8 +261,8 @@ protected: u8 pcr_r(); void pcr_w(u8 data); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual void nvram_default() override; virtual bool nvram_read(util::read_stream &file) override; @@ -293,11 +293,11 @@ public: void pc_w(u8 data) { port_input_w<2>(data); } protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; m68705p_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -311,11 +311,11 @@ public: void pd_w(u8 data) { port_input_w<3>(data); } // TODO: PD6 is also /INT2 protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; m68705u_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -323,11 +323,11 @@ protected: class m68705r_device : public m68705u_device { protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; m68705r_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -363,7 +363,7 @@ public: void set_timer_external_source(bool external) { m_timer.set_source(external ? m6805_timer::TIMER : m6805_timer::CLOCK_TIMER); } protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; }; class m6805r3_device : public m6805_mrom_device @@ -372,7 +372,7 @@ public: m6805r3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - virtual void internal_map(address_map &map) override; + virtual void internal_map(address_map &map) override ATTR_COLD; }; class m6805u2_device : public m6805_mrom_device @@ -411,7 +411,7 @@ public: m68705p3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; virtual u8 get_mask_options() const override; }; @@ -422,7 +422,7 @@ public: m68705p5_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; virtual u8 get_mask_options() const override; }; @@ -433,7 +433,7 @@ public: m68705r3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; virtual u8 get_mask_options() const override; }; @@ -446,7 +446,7 @@ public: static auto parent_rom_device_type() { return &M68705R3; } protected: - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; virtual u8 get_mask_options() const override; }; diff --git a/src/devices/cpu/m6805/m68hc05.h b/src/devices/cpu/m6805/m68hc05.h index 939f71de211..d441c8d7084 100644 --- a/src/devices/cpu/m6805/m68hc05.h +++ b/src/devices/cpu/m6805/m68hc05.h @@ -114,8 +114,8 @@ protected: void copcr_w(u8 data); void copr_w(u8 data); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override; @@ -204,9 +204,9 @@ public: m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void c4_map(address_map &map); + void c4_map(address_map &map) ATTR_COLD; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -220,9 +220,9 @@ public: m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void c8_map(address_map &map); + void c8_map(address_map &map) ATTR_COLD; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -236,12 +236,12 @@ public: m68hc705c4a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void c4a_map(address_map &map); + void c4a_map(address_map &map) ATTR_COLD; - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -260,12 +260,12 @@ public: m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void c8a_map(address_map &map); + void c8a_map(address_map &map) ATTR_COLD; - virtual tiny_rom_entry const *device_rom_region() const override; + virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -290,10 +290,10 @@ public: m68hc705j1a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void j1a_map(address_map &map); + void j1a_map(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -307,9 +307,9 @@ public: m68hc05l9_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void l9_map(address_map &map); + void l9_map(address_map &map) ATTR_COLD; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -323,9 +323,9 @@ public: m68hc05l11_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - void l11_map(address_map &map); + void l11_map(address_map &map) ATTR_COLD; - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; diff --git a/src/devices/cpu/m6805/m68hc05e1.h b/src/devices/cpu/m6805/m68hc05e1.h index 77e9b2afba7..958c41a26a5 100644 --- a/src/devices/cpu/m6805/m68hc05e1.h +++ b/src/devices/cpu/m6805/m68hc05e1.h @@ -24,8 +24,8 @@ protected: m68hc05ex_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual space_config_vector memory_space_config() const override; virtual void interrupt_vector() override; @@ -75,7 +75,7 @@ protected: required_shared_ptr<u8> m_internal_ram; private: - void m68hc05e1_map(address_map &map); + void m68hc05e1_map(address_map &map) ATTR_COLD; }; class m68hc05e5_device : public m68hc05e1_device @@ -90,7 +90,7 @@ protected: required_shared_ptr<u8> m_internal_ram; private: - void m68hc05e5_map(address_map &map); + void m68hc05e5_map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(M68HC05E1, m68hc05e1_device) diff --git a/src/devices/cpu/m6809/hd6309.h b/src/devices/cpu/m6809/hd6309.h index 1eb8761e101..2cd57f7790c 100644 --- a/src/devices/cpu/m6809/hd6309.h +++ b/src/devices/cpu/m6809/hd6309.h @@ -35,8 +35,8 @@ protected: hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, device_type type, int divider); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_pre_save() override; virtual void device_post_load() override; diff --git a/src/devices/cpu/m6809/konami.h b/src/devices/cpu/m6809/konami.h index 2e113e5c2c4..08cf3974f47 100644 --- a/src/devices/cpu/m6809/konami.h +++ b/src/devices/cpu/m6809/konami.h @@ -34,7 +34,7 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/m6809/m6809.h b/src/devices/cpu/m6809/m6809.h index 6a05ab16280..dfcc3611868 100644 --- a/src/devices/cpu/m6809/m6809.h +++ b/src/devices/cpu/m6809/m6809.h @@ -54,8 +54,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_pre_save() override; virtual void device_post_load() override; diff --git a/src/devices/cpu/m68hc16/cpu16.h b/src/devices/cpu/m68hc16/cpu16.h index ccf9929a896..fee614edbf7 100644 --- a/src/devices/cpu/m68hc16/cpu16.h +++ b/src/devices/cpu/m68hc16/cpu16.h @@ -29,8 +29,8 @@ protected: cpu16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/m68hc16/m68hc16z.h b/src/devices/cpu/m68hc16/m68hc16z.h index e28fb879df1..1265bf792e7 100644 --- a/src/devices/cpu/m68hc16/m68hc16z.h +++ b/src/devices/cpu/m68hc16/m68hc16z.h @@ -15,14 +15,14 @@ protected: m68hc16z_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; - void sim_map(address_map &map); - void sram_map(address_map &map); - void adc_map(address_map &map); - void qsm_map(address_map &map); - void gpt_map(address_map &map); + void sim_map(address_map &map) ATTR_COLD; + void sram_map(address_map &map) ATTR_COLD; + void adc_map(address_map &map) ATTR_COLD; + void qsm_map(address_map &map) ATTR_COLD; + void gpt_map(address_map &map) ATTR_COLD; private: void simcr_w(offs_t offset, u16 data, u16 mem_mask = 0xffff); @@ -95,7 +95,7 @@ public: mc68hc16z1_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); private: - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/m88000/m88000.h b/src/devices/cpu/m88000/m88000.h index 8e1d2e9e127..e646f9334c8 100644 --- a/src/devices/cpu/m88000/m88000.h +++ b/src/devices/cpu/m88000/m88000.h @@ -25,8 +25,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual void execute_run() override; diff --git a/src/devices/cpu/mb86233/mb86233.h b/src/devices/cpu/mb86233/mb86233.h index 5609de49102..97f98bced44 100644 --- a/src/devices/cpu/mb86233/mb86233.h +++ b/src/devices/cpu/mb86233/mb86233.h @@ -70,8 +70,8 @@ public: protected: mb86233_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override { return 1; } virtual uint32_t execute_max_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/mb86235/mb86235.h b/src/devices/cpu/mb86235/mb86235.h index c8a97cf452e..137189b5170 100644 --- a/src/devices/cpu/mb86235/mb86235.h +++ b/src/devices/cpu/mb86235/mb86235.h @@ -51,12 +51,12 @@ public: MB86235_ST }; - void internal_abus(address_map &map); - void internal_bbus(address_map &map); + void internal_abus(address_map &map) ATTR_COLD; + void internal_bbus(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/mb88xx/mb88xx.h b/src/devices/cpu/mb88xx/mb88xx.h index 58c3105e37c..90223c93d6e 100644 --- a/src/devices/cpu/mb88xx/mb88xx.h +++ b/src/devices/cpu/mb88xx/mb88xx.h @@ -98,20 +98,20 @@ public: void clock_w(int state); - void data_4bit(address_map &map); - void data_5bit(address_map &map); - void data_6bit(address_map &map); - void data_7bit(address_map &map); - void program_10bit(address_map &map); - void program_11bit(address_map &map); - void program_9bit(address_map &map); + void data_4bit(address_map &map) ATTR_COLD; + void data_5bit(address_map &map) ATTR_COLD; + void data_6bit(address_map &map) ATTR_COLD; + void data_7bit(address_map &map) ATTR_COLD; + void program_10bit(address_map &map) ATTR_COLD; + void program_11bit(address_map &map) ATTR_COLD; + void program_9bit(address_map &map) ATTR_COLD; protected: mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int program_width, int data_width); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/mc68hc11/mc68hc11.h b/src/devices/cpu/mc68hc11/mc68hc11.h index 6e08e2c44fc..a7248de563b 100644 --- a/src/devices/cpu/mc68hc11/mc68hc11.h +++ b/src/devices/cpu/mc68hc11/mc68hc11.h @@ -56,8 +56,8 @@ protected: mc68hc11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint16_t ram_size, uint16_t reg_block_size, uint16_t rom_size, uint16_t eeprom_size, uint8_t init_value, uint8_t config_mask, uint8_t option_mask); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -228,7 +228,7 @@ private: ophandler hc11_optable_page3[256]; ophandler hc11_optable_page4[256]; - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; uint8_t FETCH(); uint16_t FETCH16(); @@ -564,7 +564,7 @@ public: mc68hc11a1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; @@ -579,7 +579,7 @@ public: mc68hc11d0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; @@ -594,7 +594,7 @@ public: mc68hc11e1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; }; @@ -606,7 +606,7 @@ public: mc68hc811e2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; }; @@ -618,7 +618,7 @@ public: mc68hc11f1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; }; diff --git a/src/devices/cpu/mcs40/mcs40.h b/src/devices/cpu/mcs40/mcs40.h index 5dd54020dee..2933413a1b1 100644 --- a/src/devices/cpu/mcs40/mcs40.h +++ b/src/devices/cpu/mcs40/mcs40.h @@ -82,8 +82,8 @@ protected: unsigned cr_mask); // device_t implementation - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual void execute_run() override; diff --git a/src/devices/cpu/mcs48/mcs48.h b/src/devices/cpu/mcs48/mcs48.h index b5bec683335..72d2d36ef0e 100644 --- a/src/devices/cpu/mcs48/mcs48.h +++ b/src/devices/cpu/mcs48/mcs48.h @@ -138,9 +138,9 @@ protected: mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int rom_size, int ram_size, u8 feature_mask, const mcs48_ophandler *opcode_table); // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void device_config_complete() override; - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override { update_regptr(); } // device_execute_interface overrides @@ -226,8 +226,8 @@ protected: static const mcs48_ophandler s_i8022_opcodes[256]; const mcs48_ophandler *const m_opcode_table; - void program_map(address_map &map); - void data_map(address_map &map); + void program_map(address_map &map) ATTR_COLD; + void data_map(address_map &map) ATTR_COLD; // ROM is mapped to AS_PROGRAM u8 program_r(offs_t a) { return m_program.read_byte(a); } diff --git a/src/devices/cpu/mcs51/mcs51.h b/src/devices/cpu/mcs51/mcs51.h index 9d8d4dc3dd9..a1c8351c856 100644 --- a/src/devices/cpu/mcs51/mcs51.h +++ b/src/devices/cpu/mcs51/mcs51.h @@ -64,16 +64,16 @@ public: template <unsigned N> auto port_in_cb() { return m_port_in_cb[N].bind(); } template <unsigned N> auto port_out_cb() { return m_port_out_cb[N].bind(); } - void program_internal(address_map &map); - void data_internal(address_map &map); + void program_internal(address_map &map) ATTR_COLD; + void data_internal(address_map &map) ATTR_COLD; protected: // construction/destruction mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, int program_width, int data_width, uint8_t features = 0); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 12 - 1) / 12; } diff --git a/src/devices/cpu/mcs96/i8x9x.h b/src/devices/cpu/mcs96/i8x9x.h index d9e0832605f..e499ce832be 100644 --- a/src/devices/cpu/mcs96/i8x9x.h +++ b/src/devices/cpu/mcs96/i8x9x.h @@ -70,8 +70,8 @@ public: protected: i8x9x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int data_width); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int linenum, int state) override; @@ -81,7 +81,7 @@ protected: virtual void do_exec_partial() override; virtual void internal_update(u64 current_time) override; - void internal_regs(address_map &map); + void internal_regs(address_map &map) ATTR_COLD; void ad_command_w(u8 data); u8 ad_result_r(offs_t offset); void hsi_mode_w(u8 data); diff --git a/src/devices/cpu/mcs96/i8xc196.h b/src/devices/cpu/mcs96/i8xc196.h index 02d3e3d9840..f6bd1d0d193 100644 --- a/src/devices/cpu/mcs96/i8xc196.h +++ b/src/devices/cpu/mcs96/i8xc196.h @@ -22,7 +22,7 @@ protected: virtual void do_exec_full() override; virtual void do_exec_partial() override; - void internal_regs(address_map &map); + void internal_regs(address_map &map) ATTR_COLD; #define O(o) void o ## _196_full(); void o ## _196_partial() diff --git a/src/devices/cpu/mcs96/mcs96.h b/src/devices/cpu/mcs96/mcs96.h index eb22ae13d30..5acdef19cb2 100644 --- a/src/devices/cpu/mcs96/mcs96.h +++ b/src/devices/cpu/mcs96/mcs96.h @@ -47,8 +47,8 @@ protected: mcs96_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_width, address_map_constructor regs_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/melps4/m58846.h b/src/devices/cpu/melps4/m58846.h index 2ba855e3dd2..3f45829b685 100644 --- a/src/devices/cpu/melps4/m58846.h +++ b/src/devices/cpu/melps4/m58846.h @@ -23,8 +23,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_one() override; @@ -33,8 +33,8 @@ protected: virtual void write_v(u8 data) override; TIMER_CALLBACK_MEMBER(timer_update); - void data_128x4(address_map &map); - void program_2kx9(address_map &map); + void data_128x4(address_map &map) ATTR_COLD; + void program_2kx9(address_map &map) ATTR_COLD; emu_timer *m_timer; void reset_timer(); diff --git a/src/devices/cpu/melps4/melps4.h b/src/devices/cpu/melps4/melps4.h index 6274dee3266..3ce171f9d0a 100644 --- a/src/devices/cpu/melps4/melps4.h +++ b/src/devices/cpu/melps4/melps4.h @@ -93,8 +93,8 @@ protected: melps4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, int d_pins, u8 sm_page, u8 int_page); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 6 - 1) / 6; } // 6 t-states per machine cycle diff --git a/src/devices/cpu/minx/minx.h b/src/devices/cpu/minx/minx.h index 6e7507d183f..72ecceb9233 100644 --- a/src/devices/cpu/minx/minx.h +++ b/src/devices/cpu/minx/minx.h @@ -22,8 +22,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/mips/mips1.h b/src/devices/cpu/mips/mips1.h index 6baa1eb8533..618f36cbcc0 100644 --- a/src/devices/cpu/mips/mips1.h +++ b/src/devices/cpu/mips/mips1.h @@ -20,8 +20,8 @@ protected: mips1core_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size, bool cache_pws); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -163,8 +163,8 @@ protected: mips1_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size, bool cache_pws); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual translate_result translate(int intention, offs_t &address, bool debug) override; @@ -219,8 +219,8 @@ public: r3041_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; class r3051_device : public mips1core_device_base diff --git a/src/devices/cpu/mips/mips3.h b/src/devices/cpu/mips/mips3.h index 76d035dc64b..0f002080ea7 100644 --- a/src/devices/cpu/mips/mips3.h +++ b/src/devices/cpu/mips/mips3.h @@ -313,9 +313,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -879,7 +879,7 @@ protected: { } - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/mips/ps2vif1.h b/src/devices/cpu/mips/ps2vif1.h index 171a3839f8f..e054b448852 100644 --- a/src/devices/cpu/mips/ps2vif1.h +++ b/src/devices/cpu/mips/ps2vif1.h @@ -44,8 +44,8 @@ public: bool fifo_available(uint32_t count) const { return (BUFFER_SIZE - m_end) >= count; } protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_run() override; uint32_t calculate_unpack_count(); diff --git a/src/devices/cpu/mips/ps2vu.h b/src/devices/cpu/mips/ps2vu.h index e5c7ef7009a..245c623ebfa 100644 --- a/src/devices/cpu/mips/ps2vu.h +++ b/src/devices/cpu/mips/ps2vu.h @@ -110,8 +110,8 @@ protected: }; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -191,14 +191,14 @@ public: void vif_w(offs_t offset, uint64_t data); protected: - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; - void micro_map(address_map &map); - void vu_map(address_map &map); + void micro_map(address_map &map) ATTR_COLD; + void vu_map(address_map &map) ATTR_COLD; void execute_xgkick(uint32_t rs) override; @@ -221,11 +221,11 @@ public: sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; - void micro_map(address_map &map); - void vu_map(address_map &map); + void micro_map(address_map &map) ATTR_COLD; + void vu_map(address_map &map) ATTR_COLD; void execute_xgkick(uint32_t rs) override; diff --git a/src/devices/cpu/mips/r4000.h b/src/devices/cpu/mips/r4000.h index 503894a53f8..a6e0f816d9a 100644 --- a/src/devices/cpu/mips/r4000.h +++ b/src/devices/cpu/mips/r4000.h @@ -316,9 +316,9 @@ protected: }; // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_memory_interface overrides virtual space_config_vector memory_space_config() const override; diff --git a/src/devices/cpu/mipsx/mipsx.h b/src/devices/cpu/mipsx/mipsx.h index ce189d3fcf5..90b6de49b67 100644 --- a/src/devices/cpu/mipsx/mipsx.h +++ b/src/devices/cpu/mipsx/mipsx.h @@ -12,8 +12,8 @@ public: mipsx_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override { return 1; } virtual uint32_t execute_max_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/mk1/mk1.h b/src/devices/cpu/mk1/mk1.h index dad3f3ab9f7..85d20a61b26 100644 --- a/src/devices/cpu/mk1/mk1.h +++ b/src/devices/cpu/mk1/mk1.h @@ -26,8 +26,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/mn10200/mn10200.h b/src/devices/cpu/mn10200/mn10200.h index d1131b9b909..750b0fcae04 100644 --- a/src/devices/cpu/mn10200/mn10200.h +++ b/src/devices/cpu/mn10200/mn10200.h @@ -43,7 +43,7 @@ public: uint8_t io_control_r(offs_t offset); void io_control_w(offs_t offset, uint8_t data); - void mn1020012a_internal_map(address_map &map); + void mn1020012a_internal_map(address_map &map) ATTR_COLD; protected: static constexpr unsigned MN10200_NUM_PRESCALERS = 2; static constexpr unsigned MN10200_NUM_TIMERS_8BIT = 10; @@ -54,8 +54,8 @@ protected: mn10200_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; } // internal /2 divider diff --git a/src/devices/cpu/mn1400/mn1400base.h b/src/devices/cpu/mn1400/mn1400base.h index 55f10cb4f65..1749f070257 100644 --- a/src/devices/cpu/mn1400/mn1400base.h +++ b/src/devices/cpu/mn1400/mn1400base.h @@ -47,9 +47,9 @@ protected: mn1400_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; @@ -64,10 +64,10 @@ protected: // device_memory_interface overrides virtual space_config_vector memory_space_config() const override; - void program_1kx8(address_map &map); - void program_2kx8(address_map &map); - void data_64x4(address_map &map); - void data_128x4(address_map &map); + void program_1kx8(address_map &map) ATTR_COLD; + void program_2kx8(address_map &map) ATTR_COLD; + void data_64x4(address_map &map) ATTR_COLD; + void data_128x4(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_data_config; diff --git a/src/devices/cpu/mn1880/mn1880.h b/src/devices/cpu/mn1880/mn1880.h index 1e6d19699a2..787ad33cd83 100644 --- a/src/devices/cpu/mn1880/mn1880.h +++ b/src/devices/cpu/mn1880/mn1880.h @@ -32,8 +32,8 @@ protected: mn1880_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool has_mmu, address_map_constructor data_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -50,7 +50,7 @@ protected: // device_state_interface overrides virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; - void internal_data_map(address_map &map); + void internal_data_map(address_map &map) ATTR_COLD; private: struct cpu_registers diff --git a/src/devices/cpu/nanoprocessor/nanoprocessor.h b/src/devices/cpu/nanoprocessor/nanoprocessor.h index 49f63c5caca..979c1d5d843 100644 --- a/src/devices/cpu/nanoprocessor/nanoprocessor.h +++ b/src/devices/cpu/nanoprocessor/nanoprocessor.h @@ -133,8 +133,8 @@ private: memory_access< 4, 0, 0, ENDIANNESS_BIG>::specific m_io; // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_run() override; virtual void execute_set_input(int linenum, int state) override; diff --git a/src/devices/cpu/nec/nec.h b/src/devices/cpu/nec/nec.h index 12af9f8dc57..f9c361f3840 100644 --- a/src/devices/cpu/nec/nec.h +++ b/src/devices/cpu/nec/nec.h @@ -31,8 +31,8 @@ protected: nec_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type, address_map_constructor internal_port_map = address_map_constructor()); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -690,7 +690,7 @@ protected: // device_memory_interface overrides virtual bool memory_translate(int spacenum, int intention, offs_t &address, address_space *&target_space) override; - void v33_internal_port_map(address_map &map); + void v33_internal_port_map(address_map &map) ATTR_COLD; uint16_t xam_r(); }; diff --git a/src/devices/cpu/nec/v25.h b/src/devices/cpu/nec/v25.h index 6f239bb0c0a..8c2bfe50d8f 100644 --- a/src/devices/cpu/nec/v25.h +++ b/src/devices/cpu/nec/v25.h @@ -46,8 +46,8 @@ protected: v25_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override { notify_clock_changed(); } // device_execute_interface overrides @@ -172,7 +172,7 @@ private: void nec_trap(); void external_int(); - void ida_sfr_map(address_map &map); + void ida_sfr_map(address_map &map) ATTR_COLD; uint8_t read_irqcontrol(int /*INTSOURCES*/ source, uint8_t priority); void write_irqcontrol(int /*INTSOURCES*/ source, uint8_t d); uint8_t p0_r(); diff --git a/src/devices/cpu/nec/v5x.h b/src/devices/cpu/nec/v5x.h index d30bb5fdb4a..32fd6a89478 100644 --- a/src/devices/cpu/nec/v5x.h +++ b/src/devices/cpu/nec/v5x.h @@ -74,7 +74,7 @@ protected: inline void internal_io_write_byte(offs_t a, u8 v) { m_internal_io->write_byte(a & INTERNAL_IO_ADDR_MASK, v); } inline void internal_io_write_word(offs_t a, u16 v) { m_internal_io->write_word_unaligned(a & INTERNAL_IO_ADDR_MASK, v); } - void remappable_io_map(address_map &map); + void remappable_io_map(address_map &map) ATTR_COLD; virtual u8 temp_io_byte_r(offs_t offset) = 0; virtual void temp_io_byte_w(offs_t offset, u8 data) = 0; @@ -154,9 +154,9 @@ protected: v50_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool is_16bit, u8 prefetch_size, u8 prefetch_cycles, u32 chip_type); // device-specific overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks / 2); } @@ -174,7 +174,7 @@ protected: virtual void io_write_byte(offs_t a, u8 v) override; virtual void io_write_word(offs_t a, u16 v) override; - void internal_port_map(address_map &map); + void internal_port_map(address_map &map) ATTR_COLD; u8 OPCN_r(); void OPCN_w(u8 data); @@ -243,9 +243,9 @@ protected: v53_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device-specific overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_set_input(int inputnum, int state) override; @@ -261,7 +261,7 @@ protected: virtual void io_write_byte(offs_t a, u8 v) override; virtual void io_write_word(offs_t a, u16 v) override; - void internal_port_map(address_map &map); + void internal_port_map(address_map &map) ATTR_COLD; virtual void install_peripheral_io() override; u8 SCTL_r(); diff --git a/src/devices/cpu/nios2/nios2.h b/src/devices/cpu/nios2/nios2.h index 5ec25c8369d..bb096065934 100644 --- a/src/devices/cpu/nios2/nios2.h +++ b/src/devices/cpu/nios2/nios2.h @@ -26,8 +26,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/ns32000/ns32000.h b/src/devices/cpu/ns32000/ns32000.h index 99cd956fc40..24c46f788d1 100644 --- a/src/devices/cpu/ns32000/ns32000.h +++ b/src/devices/cpu/ns32000/ns32000.h @@ -21,8 +21,8 @@ protected: ns32000_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -231,8 +231,8 @@ public: protected: // device_t implementation - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_memory_interface implementation virtual space_config_vector memory_space_config() const override; diff --git a/src/devices/cpu/nuon/nuon.h b/src/devices/cpu/nuon/nuon.h index c446fad2a76..f0d0c11ac04 100644 --- a/src/devices/cpu/nuon/nuon.h +++ b/src/devices/cpu/nuon/nuon.h @@ -24,8 +24,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/olms66k/msm665xx.h b/src/devices/cpu/olms66k/msm665xx.h index 3f3fc3ae6ab..0399bffb4e9 100644 --- a/src/devices/cpu/olms66k/msm665xx.h +++ b/src/devices/cpu/olms66k/msm665xx.h @@ -33,8 +33,8 @@ public: protected: msm665xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor data_map); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -88,7 +88,7 @@ public: msm66573_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); private: - void data_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/pace/pace.h b/src/devices/cpu/pace/pace.h index ed9cadf39b9..b5c00fbb912 100644 --- a/src/devices/cpu/pace/pace.h +++ b/src/devices/cpu/pace/pace.h @@ -71,8 +71,8 @@ protected: pace_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } diff --git a/src/devices/cpu/palm/palm.h b/src/devices/cpu/palm/palm.h index a0b474ce479..e6e1588061b 100644 --- a/src/devices/cpu/palm/palm.h +++ b/src/devices/cpu/palm/palm.h @@ -28,8 +28,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u32 execute_min_cycles() const noexcept override { return 17; } diff --git a/src/devices/cpu/patinhofeio/patinhofeio_cpu.h b/src/devices/cpu/patinhofeio/patinhofeio_cpu.h index 1ba4a39fdb6..fdef1418dce 100644 --- a/src/devices/cpu/patinhofeio/patinhofeio_cpu.h +++ b/src/devices/cpu/patinhofeio/patinhofeio_cpu.h @@ -56,7 +56,7 @@ public: void transfer_byte_from_external_device(uint8_t channel, uint8_t data); void set_iodev_status(uint8_t channel, bool status) { m_iodev_status[channel] = status; } - void prog_8bit(address_map &map); + void prog_8bit(address_map &map) ATTR_COLD; protected: virtual void execute_run() override; @@ -107,8 +107,8 @@ protected: address_space *m_program; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/pdp1/pdp1.h b/src/devices/cpu/pdp1/pdp1.h index cbe0d5d8181..f4491503131 100644 --- a/src/devices/cpu/pdp1/pdp1.h +++ b/src/devices/cpu/pdp1/pdp1.h @@ -87,8 +87,8 @@ public: protected: // device-level overrides virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/pdp8/hd6120.h b/src/devices/cpu/pdp8/hd6120.h index d7df0fd6547..f3a3d655ba7 100644 --- a/src/devices/cpu/pdp8/hd6120.h +++ b/src/devices/cpu/pdp8/hd6120.h @@ -82,8 +82,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual void execute_run() override; diff --git a/src/devices/cpu/pdp8/pdp8.h b/src/devices/cpu/pdp8/pdp8.h index 98bc1fe4ed1..d481f2752bb 100644 --- a/src/devices/cpu/pdp8/pdp8.h +++ b/src/devices/cpu/pdp8/pdp8.h @@ -25,9 +25,9 @@ public: pdp8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/pic16c5x/pic16c5x.h b/src/devices/cpu/pic16c5x/pic16c5x.h index d78c2db9738..ddc3037f511 100644 --- a/src/devices/cpu/pic16c5x/pic16c5x.h +++ b/src/devices/cpu/pic16c5x/pic16c5x.h @@ -70,24 +70,24 @@ public: */ void set_config(u16 data); - void core_regs(address_map &map, u8 mirror = 0); - void ram_5_2ports(address_map &map); - void ram_5_3ports(address_map &map); - void ram_1655_3ports(address_map &map); - void ram_5_4ports(address_map &map); - void ram_7_2ports(address_map &map); - void ram_7_3ports(address_map &map); - void rom_10(address_map &map); - void rom_11(address_map &map); - void rom_9(address_map &map); + void core_regs(address_map &map, u8 mirror = 0) ATTR_COLD; + void ram_5_2ports(address_map &map) ATTR_COLD; + void ram_5_3ports(address_map &map) ATTR_COLD; + void ram_1655_3ports(address_map &map) ATTR_COLD; + void ram_5_4ports(address_map &map) ATTR_COLD; + void ram_7_2ports(address_map &map) ATTR_COLD; + void ram_7_3ports(address_map &map) ATTR_COLD; + void rom_10(address_map &map) ATTR_COLD; + void rom_11(address_map &map) ATTR_COLD; + void rom_9(address_map &map) ATTR_COLD; protected: // construction/destruction pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int program_width, int data_width, int picmodel, address_map_constructor data_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides /************************************************************************** diff --git a/src/devices/cpu/pic16c62x/pic16c62x.h b/src/devices/cpu/pic16c62x/pic16c62x.h index 73692cb105d..6a708d69dff 100644 --- a/src/devices/cpu/pic16c62x/pic16c62x.h +++ b/src/devices/cpu/pic16c62x/pic16c62x.h @@ -67,8 +67,8 @@ protected: pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, address_map_constructor ram_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 4 - 1) / 4; } @@ -240,14 +240,14 @@ private: void pic16c62x_update_timer(int counts); protected: - void core_regs(address_map &map); - void pic16c620_ram(address_map &map); - void pic16c622_ram(address_map &map); - void pic16c62x_rom_10(address_map &map); - void pic16c62x_rom_11(address_map &map); - void pic16c62x_rom_9(address_map &map); - void pic16c620a_ram(address_map &map); - void pic16c622a_ram(address_map &map); + void core_regs(address_map &map) ATTR_COLD; + void pic16c620_ram(address_map &map) ATTR_COLD; + void pic16c622_ram(address_map &map) ATTR_COLD; + void pic16c62x_rom_10(address_map &map) ATTR_COLD; + void pic16c62x_rom_11(address_map &map) ATTR_COLD; + void pic16c62x_rom_9(address_map &map) ATTR_COLD; + void pic16c620a_ram(address_map &map) ATTR_COLD; + void pic16c622a_ram(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/pic16x8x/pic16x8x.h b/src/devices/cpu/pic16x8x/pic16x8x.h index 0cd71ba978c..a2936e5bf36 100644 --- a/src/devices/cpu/pic16x8x/pic16x8x.h +++ b/src/devices/cpu/pic16x8x/pic16x8x.h @@ -54,20 +54,20 @@ public: ****************************************************************************/ void set_config(u16 data); - void core_regs(address_map &map, u8 mirror = 0); + void core_regs(address_map &map, u8 mirror = 0) ATTR_COLD; - void ram_6(address_map &map); - void rom_9(address_map &map); - void ram_7(address_map &map); - void rom_10(address_map &map); + void ram_6(address_map &map) ATTR_COLD; + void rom_9(address_map &map) ATTR_COLD; + void ram_7(address_map &map) ATTR_COLD; + void rom_10(address_map &map) ATTR_COLD; protected: // construction/destruction pic16x8x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int program_width, address_map_constructor program_map, address_map_constructor data_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides /************************************************************************** diff --git a/src/devices/cpu/pic17/pic17.h b/src/devices/cpu/pic17/pic17.h index fed49748a67..d132950ec3d 100644 --- a/src/devices/cpu/pic17/pic17.h +++ b/src/devices/cpu/pic17/pic17.h @@ -43,8 +43,8 @@ protected: pic17_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -59,7 +59,7 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // internal data map - void core_data_map(address_map &map); + void core_data_map(address_map &map) ATTR_COLD; // helpers for derived classes void int_edge(bool rising); @@ -134,7 +134,7 @@ private: void q4_write(); // address map constructor - void program_map(address_map &map); + void program_map(address_map &map) ATTR_COLD; // address spaces const address_space_config m_program_config; diff --git a/src/devices/cpu/pic17/pic17c4x.h b/src/devices/cpu/pic17/pic17c4x.h index 406244b6ee4..b02b3030ade 100644 --- a/src/devices/cpu/pic17/pic17c4x.h +++ b/src/devices/cpu/pic17/pic17c4x.h @@ -78,14 +78,14 @@ protected: pic17c4x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual bool execute_input_edge_triggered(int linenum) const noexcept override { return linenum == INT_LINE || linenum == T0CKI_LINE; } virtual void execute_set_input(int linenum, int state) override; - void data_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; virtual void increment_timers() override; @@ -162,7 +162,7 @@ protected: pic17c43_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size); private: - void data_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; }; class pic17c44_device : public pic17c43_device diff --git a/src/devices/cpu/powerpc/ppc.h b/src/devices/cpu/powerpc/ppc.h index f5a5d8ca7df..3535f490178 100644 --- a/src/devices/cpu/powerpc/ppc.h +++ b/src/devices/cpu/powerpc/ppc.h @@ -250,9 +250,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -776,7 +776,7 @@ public: uint8_t ppc4xx_spu_r(offs_t offset); void ppc4xx_spu_w(offs_t offset, uint8_t data); - void internal_ppc4xx(address_map &map); + void internal_ppc4xx(address_map &map) ATTR_COLD; protected: ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor); diff --git a/src/devices/cpu/pps4/pps4.h b/src/devices/cpu/pps4/pps4.h index 38fa3d5cd77..2e4fcebd1c7 100644 --- a/src/devices/cpu/pps4/pps4.h +++ b/src/devices/cpu/pps4/pps4.h @@ -53,8 +53,8 @@ protected: pps4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -174,8 +174,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides (NOTE: these assume internal XTAL divider is always used) virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 18 - 1) / 18; } diff --git a/src/devices/cpu/pps41/mm75.h b/src/devices/cpu/pps41/mm75.h index 39a14245cae..92785d0d5ae 100644 --- a/src/devices/cpu/pps41/mm75.h +++ b/src/devices/cpu/pps41/mm75.h @@ -40,7 +40,7 @@ public: mm75_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; // opcode handlers virtual void op_ios() override; diff --git a/src/devices/cpu/pps41/mm76.h b/src/devices/cpu/pps41/mm76.h index 54db25fc93b..b984ad9c713 100644 --- a/src/devices/cpu/pps41/mm76.h +++ b/src/devices/cpu/pps41/mm76.h @@ -50,9 +50,9 @@ protected: mm76_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -60,8 +60,8 @@ protected: // device_execute_interface overrides virtual void execute_one() override; - void data_48x4(address_map &map); - void program_0_6k(address_map &map); + void data_48x4(address_map &map) ATTR_COLD; + void program_0_6k(address_map &map) ATTR_COLD; // opcode helpers u8 ram_r(); @@ -147,7 +147,7 @@ public: protected: mm76e_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_1k(address_map &map); + void program_1k(address_map &map) ATTR_COLD; }; class mm76el_device : public mm76e_device diff --git a/src/devices/cpu/pps41/mm78.h b/src/devices/cpu/pps41/mm78.h index d901d87988c..7676cd30226 100644 --- a/src/devices/cpu/pps41/mm78.h +++ b/src/devices/cpu/pps41/mm78.h @@ -51,8 +51,8 @@ protected: mm78_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_add_mconfig(machine_config &config) override { ; } // device_disasm_interface overrides @@ -61,11 +61,11 @@ protected: // device_execute_interface overrides virtual void execute_one() override; - void data_96x4(address_map &map); - void data_128x4(address_map &map); - void program_1_3k(address_map &map); - void program_1_5k(address_map &map); - void program_2k(address_map &map); + void data_96x4(address_map &map) ATTR_COLD; + void data_128x4(address_map &map) ATTR_COLD; + void program_1_3k(address_map &map) ATTR_COLD; + void program_1_5k(address_map &map) ATTR_COLD; + void program_2k(address_map &map) ATTR_COLD; // opcode helpers virtual bool op_is_eob(u8 op) override { return (op & 0xf8) == 0x08; } diff --git a/src/devices/cpu/pps41/mm78la.h b/src/devices/cpu/pps41/mm78la.h index a9c58ab4572..cdbcb1ac275 100644 --- a/src/devices/cpu/pps41/mm78la.h +++ b/src/devices/cpu/pps41/mm78la.h @@ -52,9 +52,9 @@ protected: mm78la_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // opcode handlers virtual void op_ioa() override; @@ -83,9 +83,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // opcode handlers virtual void op_ix() override; diff --git a/src/devices/cpu/pps41/pps41base.h b/src/devices/cpu/pps41/pps41base.h index f024280a234..e97a8d39f33 100644 --- a/src/devices/cpu/pps41/pps41base.h +++ b/src/devices/cpu/pps41/pps41base.h @@ -59,8 +59,8 @@ protected: pps41_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } diff --git a/src/devices/cpu/psx/dma.h b/src/devices/cpu/psx/dma.h index 0d81d67da7d..647400248eb 100644 --- a/src/devices/cpu/psx/dma.h +++ b/src/devices/cpu/psx/dma.h @@ -36,8 +36,8 @@ public: size_t m_ramsize; protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; private: diff --git a/src/devices/cpu/psx/irq.h b/src/devices/cpu/psx/irq.h index e3d9c34408f..d59f3953222 100644 --- a/src/devices/cpu/psx/irq.h +++ b/src/devices/cpu/psx/irq.h @@ -39,8 +39,8 @@ public: void intin10(int state); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; private: diff --git a/src/devices/cpu/psx/mdec.h b/src/devices/cpu/psx/mdec.h index 8d9da890069..a380413d876 100644 --- a/src/devices/cpu/psx/mdec.h +++ b/src/devices/cpu/psx/mdec.h @@ -27,8 +27,8 @@ public: void dma_read( uint32_t *ram, uint32_t n_address, int32_t n_size ); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; private: diff --git a/src/devices/cpu/psx/psx.h b/src/devices/cpu/psx/psx.h index 30bb90d85ff..16950f929da 100644 --- a/src/devices/cpu/psx/psx.h +++ b/src/devices/cpu/psx/psx.h @@ -162,7 +162,7 @@ public: void set_disable_rom_berr(bool mode); - void psxcpu_internal_map(address_map &map); + void psxcpu_internal_map(address_map &map) ATTR_COLD; protected: static constexpr unsigned ICACHE_ENTRIES = 0x400; static constexpr unsigned DCACHE_ENTRIES = 0x100; @@ -170,10 +170,10 @@ protected: psxcpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/psx/rcnt.h b/src/devices/cpu/psx/rcnt.h index ee3e637a1e9..25df13a2d7e 100644 --- a/src/devices/cpu/psx/rcnt.h +++ b/src/devices/cpu/psx/rcnt.h @@ -40,8 +40,8 @@ public: uint32_t read(offs_t offset, uint32_t mem_mask = ~0); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; TIMER_CALLBACK_MEMBER( timer_update ); diff --git a/src/devices/cpu/psx/sio.h b/src/devices/cpu/psx/sio.h index f751e7949cf..6bc07ab1df8 100644 --- a/src/devices/cpu/psx/sio.h +++ b/src/devices/cpu/psx/sio.h @@ -53,7 +53,7 @@ protected: psxsio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual void device_post_load() override; TIMER_CALLBACK_MEMBER( sio_tick ); diff --git a/src/devices/cpu/rii/riscii.h b/src/devices/cpu/rii/riscii.h index 5dedcf53af5..f050ce77c6f 100644 --- a/src/devices/cpu/rii/riscii.h +++ b/src/devices/cpu/rii/riscii.h @@ -95,8 +95,8 @@ protected: riscii_series_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, unsigned addrbits, unsigned pcbits, unsigned bankbits, u8 maxbank, u8 post_id_mask, address_map_constructor regs); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual void execute_run() override; @@ -108,7 +108,7 @@ protected: // device_state_interface implementation virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; - void core_regs_map(address_map &map); + void core_regs_map(address_map &map) ATTR_COLD; // register handlers u8 fsr0_r(); @@ -399,7 +399,7 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void regs_map(address_map &map); + void regs_map(address_map &map) ATTR_COLD; }; DECLARE_DEVICE_TYPE(EPG3231, epg3231_device) diff --git a/src/devices/cpu/romp/romp.h b/src/devices/cpu/romp/romp.h index 556de7e6e95..9528a15078c 100644 --- a/src/devices/cpu/romp/romp.h +++ b/src/devices/cpu/romp/romp.h @@ -107,8 +107,8 @@ protected: }; // device_t overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/rsp/rsp.h b/src/devices/cpu/rsp/rsp.h index c19784ed03d..0007e96714c 100644 --- a/src/devices/cpu/rsp/rsp.h +++ b/src/devices/cpu/rsp/rsp.h @@ -95,9 +95,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/rw5000/a5500.h b/src/devices/cpu/rw5000/a5500.h index 138c38df630..6485a6cb868 100644 --- a/src/devices/cpu/rw5000/a5500.h +++ b/src/devices/cpu/rw5000/a5500.h @@ -33,8 +33,8 @@ protected: virtual void reset_pc() override { set_pc(0, 0); } virtual u8 sr_page() override { return 15; } - void program_768x8(address_map &map); - void data_48x4(address_map &map); + void program_768x8(address_map &map) ATTR_COLD; + void data_48x4(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/rw5000/a5900.h b/src/devices/cpu/rw5000/a5900.h index b6b59508578..d9de3004d5b 100644 --- a/src/devices/cpu/rw5000/a5900.h +++ b/src/devices/cpu/rw5000/a5900.h @@ -20,7 +20,7 @@ public: a5900_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - void program_512x8(address_map &map); + void program_512x8(address_map &map) ATTR_COLD; // opcode handlers virtual void op_read() override; diff --git a/src/devices/cpu/rw5000/b5000.h b/src/devices/cpu/rw5000/b5000.h index 828ef1d9bd7..abc84759de5 100644 --- a/src/devices/cpu/rw5000/b5000.h +++ b/src/devices/cpu/rw5000/b5000.h @@ -63,8 +63,8 @@ protected: virtual u8 sr_page() { return 0; } virtual u16 decode_digit(u8 data); - void program_448x8(address_map &map); - void data_45x4(address_map &map); + void program_448x8(address_map &map) ATTR_COLD; + void data_45x4(address_map &map) ATTR_COLD; // opcode helpers u8 ram_r(); diff --git a/src/devices/cpu/rw5000/b6000.h b/src/devices/cpu/rw5000/b6000.h index e415c353ee5..a99c754dbd9 100644 --- a/src/devices/cpu/rw5000/b6000.h +++ b/src/devices/cpu/rw5000/b6000.h @@ -53,12 +53,12 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void execute_one() override; virtual u16 decode_digit(u8 data) override; - void program_512x8(address_map &map); + void program_512x8(address_map &map) ATTR_COLD; // opcode handlers virtual void op_tkbs() override; diff --git a/src/devices/cpu/rw5000/b6100.h b/src/devices/cpu/rw5000/b6100.h index bd6a3db9e1b..ac914a5984c 100644 --- a/src/devices/cpu/rw5000/b6100.h +++ b/src/devices/cpu/rw5000/b6100.h @@ -59,8 +59,8 @@ protected: virtual u8 sr_page() override { return 15; } virtual u16 decode_digit(u8 data) override; - void program_896x8(address_map &map); - void data_48x4(address_map &map); + void program_896x8(address_map &map) ATTR_COLD; + void data_48x4(address_map &map) ATTR_COLD; // opcode handlers virtual void op_tkbs() override; diff --git a/src/devices/cpu/rw5000/rw5000base.h b/src/devices/cpu/rw5000/rw5000base.h index f6dc6146af8..a84968cd5aa 100644 --- a/src/devices/cpu/rw5000/rw5000base.h +++ b/src/devices/cpu/rw5000/rw5000base.h @@ -41,8 +41,8 @@ protected: rw5000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } // 4-phase clock diff --git a/src/devices/cpu/rx01/rx01.h b/src/devices/cpu/rx01/rx01.h index 230f1cb8170..4eaf7fc8eee 100644 --- a/src/devices/cpu/rx01/rx01.h +++ b/src/devices/cpu/rx01/rx01.h @@ -52,8 +52,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } diff --git a/src/devices/cpu/s2650/s2650.h b/src/devices/cpu/s2650/s2650.h index c17287b5380..e21e861aa62 100644 --- a/src/devices/cpu/s2650/s2650.h +++ b/src/devices/cpu/s2650/s2650.h @@ -38,8 +38,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/saturn/saturn.h b/src/devices/cpu/saturn/saturn.h index f40d3eb7237..3a2132d260f 100644 --- a/src/devices/cpu/saturn/saturn.h +++ b/src/devices/cpu/saturn/saturn.h @@ -80,8 +80,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/sc61860/sc61860.h b/src/devices/cpu/sc61860/sc61860.h index ab0e83c1bec..8345ee08067 100644 --- a/src/devices/cpu/sc61860/sc61860.h +++ b/src/devices/cpu/sc61860/sc61860.h @@ -68,8 +68,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/scmp/scmp.h b/src/devices/cpu/scmp/scmp.h index bfa52a56e9d..dfc4d3e48c8 100644 --- a/src/devices/cpu/scmp/scmp.h +++ b/src/devices/cpu/scmp/scmp.h @@ -29,8 +29,8 @@ protected: scmp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } diff --git a/src/devices/cpu/score/score.h b/src/devices/cpu/score/score.h index 887d3ad68cb..b6328729a1a 100644 --- a/src/devices/cpu/score/score.h +++ b/src/devices/cpu/score/score.h @@ -37,8 +37,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/scudsp/scudsp.h b/src/devices/cpu/scudsp/scudsp.h index 19e2a079c4f..bb4bc6b8fea 100644 --- a/src/devices/cpu/scudsp/scudsp.h +++ b/src/devices/cpu/scudsp/scudsp.h @@ -59,12 +59,12 @@ public: uint32_t ram_address_r(); void ram_address_w(uint32_t data); - void data_map(address_map &map); - void program_map(address_map &map); + void data_map(address_map &map) ATTR_COLD; + void program_map(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/se3208/se3208.h b/src/devices/cpu/se3208/se3208.h index dff3ca9888c..8f6b2a1ccbb 100644 --- a/src/devices/cpu/se3208/se3208.h +++ b/src/devices/cpu/se3208/se3208.h @@ -26,8 +26,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/sh/sh.h b/src/devices/cpu/sh/sh.h index 54e27e963fc..9980fa87709 100644 --- a/src/devices/cpu/sh/sh.h +++ b/src/devices/cpu/sh/sh.h @@ -480,7 +480,7 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; }; class sh_frontend : public drc_frontend diff --git a/src/devices/cpu/sh/sh2.h b/src/devices/cpu/sh/sh2.h index a552318df46..7e7af7c7d1e 100644 --- a/src/devices/cpu/sh/sh2.h +++ b/src/devices/cpu/sh/sh2.h @@ -36,8 +36,8 @@ protected: void check_pending_irq(const char *message); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/sh/sh4.h b/src/devices/cpu/sh/sh4.h index ef745d85add..329cd9d2c71 100644 --- a/src/devices/cpu/sh/sh4.h +++ b/src/devices/cpu/sh/sh4.h @@ -257,8 +257,8 @@ protected: sh34_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness, address_map_constructor internal); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -685,12 +685,12 @@ public: void sh3_internal_high_w(offs_t offset, uint32_t data, uint32_t mem_mask = ~0); uint32_t sh3_internal_high_r(offs_t offset, uint32_t mem_mask = ~0); - void sh3_internal_map(address_map &map); + void sh3_internal_map(address_map &map) ATTR_COLD; protected: // construction/destruction sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness); - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; @@ -713,13 +713,13 @@ public: virtual uint32_t sh4_getsqremap(uint32_t address) override; sh4_utlb m_utlb[64]; - void sh4_internal_map(address_map &map); + void sh4_internal_map(address_map &map) ATTR_COLD; protected: // construction/destruction sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; diff --git a/src/devices/cpu/sh/sh7014.h b/src/devices/cpu/sh/sh7014.h index 40f33e1ac55..8999558b6ef 100644 --- a/src/devices/cpu/sh/sh7014.h +++ b/src/devices/cpu/sh/sh7014.h @@ -48,16 +48,16 @@ public: auto read_portf() { return m_port.lookup()->port_f_read_callback(); } protected: - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual void sh2_exception_internal(const char *message, int irqline, int vector) override; private: - void sh7014_map(address_map &map); + void sh7014_map(address_map &map) ATTR_COLD; void set_irq(int vector, int level, bool is_internal); diff --git a/src/devices/cpu/sh/sh7014_bsc.h b/src/devices/cpu/sh/sh7014_bsc.h index 97f4b0c879c..0a2f77df123 100644 --- a/src/devices/cpu/sh/sh7014_bsc.h +++ b/src/devices/cpu/sh/sh7014_bsc.h @@ -17,11 +17,11 @@ class sh7014_bsc_device : public device_t public: sh7014_bsc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); - void map(address_map &map); + void map(address_map &map) ATTR_COLD; protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: uint16_t bcr1_r(); diff --git a/src/devices/cpu/sh/sh7014_dmac.h b/src/devices/cpu/sh/sh7014_dmac.h index d9c92918222..d44b3414a0d 100644 --- a/src/devices/cpu/sh/sh7014_dmac.h +++ b/src/devices/cpu/sh/sh7014_dmac.h @@ -51,15 +51,15 @@ public: auto notify_dma_source_callback() { return m_notify_dma_source_cb.bind(); } - void map(address_map &map); + void map(address_map &map) ATTR_COLD; void dma_check(); bool is_dma_activated(int vector); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: enum { @@ -143,15 +143,15 @@ public: m_chan[1].lookup()->notify_dma_source_callback().set(std::forward<T>(args)...); } - void map(address_map &map); + void map(address_map &map) ATTR_COLD; int is_dma_activated(int vector); bool is_transfer_allowed(); protected: - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; private: enum { diff --git a/src/devices/cpu/sh/sh7014_intc.h b/src/devices/cpu/sh/sh7014_intc.h index d8d71f6dbc3..3a6629dcb60 100644 --- a/src/devices/cpu/sh/sh7014_intc.h +++ b/src/devices/cpu/sh/sh7014_intc.h @@ -71,15 +71,15 @@ public: template <typename... T> void set_irq_callback(T &&... args) { m_set_irq_cb.set(std::forward<T>(args)...); } - void map(address_map &map); + void map(address_map &map) ATTR_COLD; void set_input(int inputnum, int state); void set_interrupt(int vector, int state); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: enum { diff --git a/src/devices/cpu/sh/sh7014_mtu.h b/src/devices/cpu/sh/sh7014_mtu.h index c9c9e784390..1dc2f71653e 100644 --- a/src/devices/cpu/sh/sh7014_mtu.h +++ b/src/devices/cpu/sh/sh7014_mtu.h @@ -28,12 +28,12 @@ public: m_intc.set_tag(std::forward<T>(intc)); } - void map(address_map &map); + void map(address_map &map) ATTR_COLD; protected: - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; private: enum { @@ -78,15 +78,15 @@ public: m_tgr_count = chan_id == 0 ? 4 : 2; } - void map_chan0(address_map &map); - void map_chan1_2(address_map &map); + void map_chan0(address_map &map) ATTR_COLD; + void map_chan1_2(address_map &map) ATTR_COLD; void set_enable(bool enabled); bool is_enabled() { return m_channel_active; } protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: enum { diff --git a/src/devices/cpu/sh/sh7014_port.h b/src/devices/cpu/sh/sh7014_port.h index 675812ebbaa..dc69a62a839 100644 --- a/src/devices/cpu/sh/sh7014_port.h +++ b/src/devices/cpu/sh/sh7014_port.h @@ -71,8 +71,8 @@ public: uint8_t pfdr_r(); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: devcb_read16 m_port_a_read_cb; diff --git a/src/devices/cpu/sh/sh7014_sci.h b/src/devices/cpu/sh/sh7014_sci.h index cc713bc737c..1673c631477 100644 --- a/src/devices/cpu/sh/sh7014_sci.h +++ b/src/devices/cpu/sh/sh7014_sci.h @@ -39,11 +39,11 @@ public: void set_external_clock_period(const attotime &_period); void set_send_full_data_transmit_on_sync_hack(bool enabled); - void map(address_map &map); + void map(address_map &map) ATTR_COLD; protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void rcv_complete() override; diff --git a/src/devices/cpu/sh/sh7021.h b/src/devices/cpu/sh/sh7021.h index 8540b2bbb62..487470ed8b1 100644 --- a/src/devices/cpu/sh/sh7021.h +++ b/src/devices/cpu/sh/sh7021.h @@ -26,8 +26,8 @@ public: template <int Line> void write_pbdr_bit(int state); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_run() override; @@ -184,7 +184,7 @@ protected: uint16_t pfc_cascr_r(); void pfc_cascr_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0); - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; void recalc_irq(); diff --git a/src/devices/cpu/sh/sh7032.h b/src/devices/cpu/sh/sh7032.h index 907fe84a8c9..8608da410d6 100644 --- a/src/devices/cpu/sh/sh7032.h +++ b/src/devices/cpu/sh/sh7032.h @@ -16,11 +16,11 @@ public: sh7032_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: - void sh7032_map(address_map &map); + void sh7032_map(address_map &map) ATTR_COLD; uint16_t sh7032_r(offs_t offset); void sh7032_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0); diff --git a/src/devices/cpu/sh/sh7042.h b/src/devices/cpu/sh/sh7042.h index 6060380cc9c..dbe2b32f6aa 100644 --- a/src/devices/cpu/sh/sh7042.h +++ b/src/devices/cpu/sh/sh7042.h @@ -83,9 +83,9 @@ protected: sh7042_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void sh2_exception_internal(const char *message, int irqline, int vector) override; virtual void execute_set_input(int irqline, int state) override; @@ -132,7 +132,7 @@ private: u32 m_pcf_e; u16 m_pcf_if; - void map(address_map &map); + void map(address_map &map) ATTR_COLD; u16 adc_default(int adc); u16 port16_default_r(int port); diff --git a/src/devices/cpu/sh/sh7604.h b/src/devices/cpu/sh/sh7604.h index c75c6964e49..bc0bfcc3330 100644 --- a/src/devices/cpu/sh/sh7604.h +++ b/src/devices/cpu/sh/sh7604.h @@ -37,8 +37,8 @@ public: protected: sh7604_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type, address_map_constructor internal_map, int addrlines); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void sh2_exception(const char *message, int irqline) override; @@ -55,7 +55,7 @@ private: CCLRA = 0x01 }; - void sh7604_map(address_map &map); + void sh7604_map(address_map &map) ATTR_COLD; uint32_t sh2_internal_a5(); diff --git a/src/devices/cpu/sh/sh7604_bus.h b/src/devices/cpu/sh/sh7604_bus.h index 8189e6d2bf0..6400f27cb43 100644 --- a/src/devices/cpu/sh/sh7604_bus.h +++ b/src/devices/cpu/sh/sh7604_bus.h @@ -26,7 +26,7 @@ public: sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // I/O operations - void bus_regs(address_map &map); + void bus_regs(address_map &map) ATTR_COLD; void write(address_space &space, offs_t offset, uint32_t data, uint32_t mem_mask = ~0); uint32_t read(address_space &space, offs_t offset); @@ -48,8 +48,8 @@ public: protected: // device-level overrides //virtual void device_validity_check(validity_checker &valid) const; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: bool m_is_slave; diff --git a/src/devices/cpu/sh/sh7604_sci.h b/src/devices/cpu/sh/sh7604_sci.h index c760ff42588..87748a17a3e 100644 --- a/src/devices/cpu/sh/sh7604_sci.h +++ b/src/devices/cpu/sh/sh7604_sci.h @@ -26,7 +26,7 @@ public: sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // I/O operations - void sci_regs(address_map &map); + void sci_regs(address_map &map) ATTR_COLD; void write(address_space &space, offs_t offset, uint8_t data); uint8_t read(address_space &space, offs_t offset); @@ -59,8 +59,8 @@ protected: // device-level overrides // virtual void device_validity_check(validity_checker &valid) const; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: const address_space_config m_space_config; diff --git a/src/devices/cpu/sh/sh7604_wdt.h b/src/devices/cpu/sh/sh7604_wdt.h index dd39f4be514..a0d977f7c01 100644 --- a/src/devices/cpu/sh/sh7604_wdt.h +++ b/src/devices/cpu/sh/sh7604_wdt.h @@ -26,7 +26,7 @@ public: sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // I/O operations - void wdt_regs(address_map &map); + void wdt_regs(address_map &map) ATTR_COLD; void write(address_space &space, offs_t offset, uint16_t data); uint8_t read(address_space &space, offs_t offset); @@ -34,8 +34,8 @@ public: protected: // device-level overrides // virtual void device_validity_check(validity_checker &valid) const; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: const address_space_config m_space_config; }; diff --git a/src/devices/cpu/sh/sh_adc.h b/src/devices/cpu/sh/sh_adc.h index 10f55c9793b..d9e8236f09b 100644 --- a/src/devices/cpu/sh/sh_adc.h +++ b/src/devices/cpu/sh/sh_adc.h @@ -71,8 +71,8 @@ protected: bool m_analog_powered, m_adtrg; u64 m_next_event; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void sampling(); void start_conversion(); diff --git a/src/devices/cpu/sh/sh_bsc.h b/src/devices/cpu/sh/sh_bsc.h index 574e57ccd64..f1c78916cf7 100644 --- a/src/devices/cpu/sh/sh_bsc.h +++ b/src/devices/cpu/sh/sh_bsc.h @@ -38,8 +38,8 @@ public: protected: u16 m_bcr1, m_bcr2, m_wcr1, m_wcr2, m_dcr, m_rtcsr, m_rtcnt, m_rtcor; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(SH_BSC, sh_bsc_device) diff --git a/src/devices/cpu/sh/sh_cmt.h b/src/devices/cpu/sh/sh_cmt.h index 0407f71c06e..4451e90e3ef 100644 --- a/src/devices/cpu/sh/sh_cmt.h +++ b/src/devices/cpu/sh/sh_cmt.h @@ -58,8 +58,8 @@ protected: std::array<u16, 2> m_cnt; std::array<u16, 2> m_cor; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void csr_w(int reg, u16 data, u16 mem_mask); void cnt_w(int reg, u16 data, u16 mem_mask); diff --git a/src/devices/cpu/sh/sh_dmac.h b/src/devices/cpu/sh/sh_dmac.h index f5ae0bfeec5..3c8436df0d8 100644 --- a/src/devices/cpu/sh/sh_dmac.h +++ b/src/devices/cpu/sh/sh_dmac.h @@ -38,8 +38,8 @@ protected: u16 m_dmaor; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; class sh_dmac_channel_device : public device_t { @@ -69,8 +69,8 @@ protected: u32 m_sar, m_dar, m_dmatcr, m_chcr; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(SH_DMAC, sh_dmac_device) diff --git a/src/devices/cpu/sh/sh_intc.h b/src/devices/cpu/sh/sh_intc.h index d00f167b927..9a743f4e778 100644 --- a/src/devices/cpu/sh/sh_intc.h +++ b/src/devices/cpu/sh/sh_intc.h @@ -47,8 +47,8 @@ protected: required_device<sh7042_device> m_cpu; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void update_irq(); }; diff --git a/src/devices/cpu/sh/sh_mtu.h b/src/devices/cpu/sh/sh_mtu.h index 9c90bc398bf..7d1a9be9d6e 100644 --- a/src/devices/cpu/sh/sh_mtu.h +++ b/src/devices/cpu/sh/sh_mtu.h @@ -125,8 +125,8 @@ protected: bool m_channel_active; std::array<int, 8> m_count_types; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void update_counter(u64 cur_time = 0); void recalc_event(u64 cur_time = 0); }; @@ -172,8 +172,8 @@ protected: u8 m_tstr, m_tsyr, m_toer, m_tocr, m_tgcr; u16 m_tcdr, m_tddr, m_tcnts, m_tcbr; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(SH_MTU, sh_mtu_device) diff --git a/src/devices/cpu/sh/sh_port.h b/src/devices/cpu/sh/sh_port.h index ec2a19228ee..45f7d14feaf 100644 --- a/src/devices/cpu/sh/sh_port.h +++ b/src/devices/cpu/sh/sh_port.h @@ -38,8 +38,8 @@ protected: u16 m_default_io, m_mask; u16 m_dr, m_io; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; class sh_port32_device : public device_t { @@ -65,8 +65,8 @@ protected: u32 m_default_io, m_mask; u32 m_dr, m_io; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; DECLARE_DEVICE_TYPE(SH_PORT16, sh_port16_device) diff --git a/src/devices/cpu/sh/sh_sci.h b/src/devices/cpu/sh/sh_sci.h index bb1890c3c8b..3c36a346254 100644 --- a/src/devices/cpu/sh/sh_sci.h +++ b/src/devices/cpu/sh/sh_sci.h @@ -120,8 +120,8 @@ protected: std::string m_last_clock_message; - void device_start() override; - void device_reset() override; + void device_start() override ATTR_COLD; + void device_reset() override ATTR_COLD; TIMER_CALLBACK_MEMBER(sync_tick); diff --git a/src/devices/cpu/sharc/sharc.h b/src/devices/cpu/sharc/sharc.h index eafbd7fe74f..e8246a32d8f 100644 --- a/src/devices/cpu/sharc/sharc.h +++ b/src/devices/cpu/sharc/sharc.h @@ -200,12 +200,12 @@ public: EXCEPTION_COUNT }; - void internal_data(address_map &map); - void internal_pgm(address_map &map); + void internal_data(address_map &map) ATTR_COLD; + void internal_pgm(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 8; } diff --git a/src/devices/cpu/sm510/sm500.h b/src/devices/cpu/sm510/sm500.h index 04cc902e90f..93f7da163c6 100644 --- a/src/devices/cpu/sm510/sm500.h +++ b/src/devices/cpu/sm510/sm500.h @@ -59,11 +59,11 @@ public: protected: sm500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_1_2k(address_map &map); - void data_4x10x4(address_map &map); + void program_1_2k(address_map &map) ATTR_COLD; + void data_4x10x4(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_one() override; virtual bool op_argument() override; diff --git a/src/devices/cpu/sm510/sm510.h b/src/devices/cpu/sm510/sm510.h index 49cb0e7b9c6..64f6d7c7258 100644 --- a/src/devices/cpu/sm510/sm510.h +++ b/src/devices/cpu/sm510/sm510.h @@ -64,8 +64,8 @@ public: sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); protected: - void program_2_7k(address_map &map); - void data_96_32x4(address_map &map); + void program_2_7k(address_map &map) ATTR_COLD; + void data_96_32x4(address_map &map) ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_one() override; diff --git a/src/devices/cpu/sm510/sm510base.h b/src/devices/cpu/sm510/sm510base.h index 139f5cdb79c..3f65b117c97 100644 --- a/src/devices/cpu/sm510/sm510base.h +++ b/src/devices/cpu/sm510/sm510base.h @@ -70,8 +70,8 @@ protected: sm510_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + m_clk_div - 1) / m_clk_div; } // default 2 cycles per machine cycle diff --git a/src/devices/cpu/sm510/sm511.h b/src/devices/cpu/sm510/sm511.h index 463ede6be04..c6eef9ce1b9 100644 --- a/src/devices/cpu/sm510/sm511.h +++ b/src/devices/cpu/sm510/sm511.h @@ -32,11 +32,11 @@ public: protected: sm511_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_4k(address_map &map); - void data_96_32x4(address_map &map); + void program_4k(address_map &map) ATTR_COLD; + void data_96_32x4(address_map &map) ATTR_COLD; virtual void device_post_load() override { notify_clock_changed(); } - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_one() override; @@ -53,7 +53,7 @@ public: sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); protected: - void data_80_48x4(address_map &map); + void data_80_48x4(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/sm510/sm530.h b/src/devices/cpu/sm510/sm530.h index 654bcf2963e..adcde423087 100644 --- a/src/devices/cpu/sm510/sm530.h +++ b/src/devices/cpu/sm510/sm530.h @@ -77,11 +77,11 @@ public: protected: sm530_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_2k(address_map &map); - void data_64_24x4(address_map &map); + void program_2k(address_map &map) ATTR_COLD; + void data_64_24x4(address_map &map) ATTR_COLD; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 3 - 1) / 3; } // 3 cycles per machine cycle diff --git a/src/devices/cpu/sm510/sm590.h b/src/devices/cpu/sm510/sm590.h index 8e866b954f8..bb0455c4bad 100644 --- a/src/devices/cpu/sm510/sm590.h +++ b/src/devices/cpu/sm510/sm590.h @@ -99,14 +99,14 @@ public: protected: sm590_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_512x8(address_map &map); - void program_768x8(address_map &map); - void program_1kx8(address_map &map); - void data_32x4(address_map &map); - void data_56x4(address_map &map); - - virtual void device_start() override; - virtual void device_reset() override; + void program_512x8(address_map &map) ATTR_COLD; + void program_768x8(address_map &map) ATTR_COLD; + void program_1kx8(address_map &map) ATTR_COLD; + void data_32x4(address_map &map) ATTR_COLD; + void data_56x4(address_map &map) ATTR_COLD; + + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } // 4 cycles per machine cycle diff --git a/src/devices/cpu/sm510/sm5a.h b/src/devices/cpu/sm510/sm5a.h index 193c5123610..05d746b9bf3 100644 --- a/src/devices/cpu/sm510/sm5a.h +++ b/src/devices/cpu/sm510/sm5a.h @@ -65,8 +65,8 @@ public: protected: sm5a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); - void program_1_8k(address_map &map); - void data_5x13x4(address_map &map); + void program_1_8k(address_map &map) ATTR_COLD; + void data_5x13x4(address_map &map) ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_one() override; diff --git a/src/devices/cpu/sm8500/sm8500.h b/src/devices/cpu/sm8500/sm8500.h index 936bb42a599..b65634e34d9 100644 --- a/src/devices/cpu/sm8500/sm8500.h +++ b/src/devices/cpu/sm8500/sm8500.h @@ -51,8 +51,8 @@ protected: static constexpr uint8_t FLAG_I = 0x01; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/sparc/sparc.h b/src/devices/cpu/sparc/sparc.h index 821da8e9fb1..f61ddb30e5e 100644 --- a/src/devices/cpu/sparc/sparc.h +++ b/src/devices/cpu/sparc/sparc.h @@ -26,10 +26,10 @@ public: template <typename T> void set_mmu(T &&tag) { m_mmu.set_tag(std::forward<T>(tag)); } // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; - virtual void device_resolve_objects() override; + virtual void device_resolve_objects() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -295,8 +295,8 @@ public: protected: sparcv8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual bool execute_extra_group2(uint32_t op) override; virtual bool execute_extra_group3(uint32_t op) override; @@ -339,8 +339,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; virtual bool execute_extra_group2(uint32_t op) override; @@ -397,14 +397,14 @@ protected: u32 dcache_data_r(offs_t offset, u32 mem_mask); void dcache_data_w(offs_t offset, u32 data, u32 mem_mask); - void control_map(address_map &map); - void icache_lock_map(address_map &map); - void dcache_lock_map(address_map &map); - template <uint8_t Asi> void mmu_map(address_map &map); - void icache_tag_map(address_map &map); - void icache_data_map(address_map &map); - void dcache_tag_map(address_map &map); - void dcache_data_map(address_map &map); + void control_map(address_map &map) ATTR_COLD; + void icache_lock_map(address_map &map) ATTR_COLD; + void dcache_lock_map(address_map &map) ATTR_COLD; + template <uint8_t Asi> void mmu_map(address_map &map) ATTR_COLD; + void icache_tag_map(address_map &map) ATTR_COLD; + void icache_data_map(address_map &map) ATTR_COLD; + void dcache_tag_map(address_map &map) ATTR_COLD; + void dcache_data_map(address_map &map) ATTR_COLD; void update_addr_masks(); void update_wait_states(); diff --git a/src/devices/cpu/spc700/spc700.h b/src/devices/cpu/spc700/spc700.h index b43c6dd71f2..59c862f645a 100644 --- a/src/devices/cpu/spc700/spc700.h +++ b/src/devices/cpu/spc700/spc700.h @@ -17,8 +17,8 @@ protected: spc700_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map = address_map_constructor()); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } diff --git a/src/devices/cpu/ssem/ssem.h b/src/devices/cpu/ssem/ssem.h index 06180551468..f3d4d9b8041 100644 --- a/src/devices/cpu/ssem/ssem.h +++ b/src/devices/cpu/ssem/ssem.h @@ -26,9 +26,9 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/ssp1601/ssp1601.h b/src/devices/cpu/ssp1601/ssp1601.h index 673b0eb0f55..48133cd5790 100644 --- a/src/devices/cpu/ssp1601/ssp1601.h +++ b/src/devices/cpu/ssp1601/ssp1601.h @@ -26,8 +26,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/st62xx/st62xx.h b/src/devices/cpu/st62xx/st62xx.h index 0cb3e36ea42..e897dab172a 100644 --- a/src/devices/cpu/st62xx/st62xx.h +++ b/src/devices/cpu/st62xx/st62xx.h @@ -89,8 +89,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -108,8 +108,8 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // address spaces - void st6228_program_map(address_map &map); - void st6228_data_map(address_map &map); + void st6228_program_map(address_map &map) ATTR_COLD; + void st6228_data_map(address_map &map) ATTR_COLD; void unimplemented_opcode(uint8_t op); diff --git a/src/devices/cpu/st9/st905x.h b/src/devices/cpu/st9/st905x.h index 17605756f1b..813251666f9 100644 --- a/src/devices/cpu/st9/st905x.h +++ b/src/devices/cpu/st9/st905x.h @@ -22,8 +22,8 @@ protected: st9_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor regmap); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -86,7 +86,7 @@ public: st90r50_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); private: - void register_map(address_map &map); + void register_map(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/superfx/superfx.h b/src/devices/cpu/superfx/superfx.h index 9cbe9adf353..32ac4bc1016 100644 --- a/src/devices/cpu/superfx/superfx.h +++ b/src/devices/cpu/superfx/superfx.h @@ -108,8 +108,8 @@ protected: superfx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/t11/t11.h b/src/devices/cpu/t11/t11.h index 431da089b8f..0ac0a17790a 100644 --- a/src/devices/cpu/t11/t11.h +++ b/src/devices/cpu/t11/t11.h @@ -89,8 +89,8 @@ protected: t11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 12; } @@ -1203,7 +1203,7 @@ public: protected: // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; // device_state_interface overrides virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; @@ -1221,7 +1221,7 @@ public: protected: // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; // device_state_interface overrides virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; diff --git a/src/devices/cpu/tlcs870/tlcs870.h b/src/devices/cpu/tlcs870/tlcs870.h index 189fec2f90f..e6e4d5f5d05 100644 --- a/src/devices/cpu/tlcs870/tlcs870.h +++ b/src/devices/cpu/tlcs870/tlcs870.h @@ -45,8 +45,8 @@ protected: tlcs870_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } @@ -66,7 +66,7 @@ protected: // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void tmp87ph40an_mem(address_map &map); + void tmp87ph40an_mem(address_map &map) ATTR_COLD; uint32_t m_debugger_temp; diff --git a/src/devices/cpu/tlcs90/tlcs90.h b/src/devices/cpu/tlcs90/tlcs90.h index c7e9b598003..9f690c934ad 100644 --- a/src/devices/cpu/tlcs90/tlcs90.h +++ b/src/devices/cpu/tlcs90/tlcs90.h @@ -38,8 +38,8 @@ protected: tlcs90_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } @@ -55,13 +55,13 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // address maps - void tmp90840_regs(address_map &map); - void tmp90840_mem(address_map &map); - void tmp90841_mem(address_map &map); - void tmp90844_regs(address_map &map); - void tmp90ph44_mem(address_map &map); - void tmp91640_mem(address_map &map); - void tmp91641_mem(address_map &map); + void tmp90840_regs(address_map &map) ATTR_COLD; + void tmp90840_mem(address_map &map) ATTR_COLD; + void tmp90841_mem(address_map &map) ATTR_COLD; + void tmp90844_regs(address_map &map) ATTR_COLD; + void tmp90ph44_mem(address_map &map) ATTR_COLD; + void tmp91640_mem(address_map &map) ATTR_COLD; + void tmp91641_mem(address_map &map) ATTR_COLD; TIMER_CALLBACK_MEMBER(t90_timer_callback); TIMER_CALLBACK_MEMBER(t90_timer4_callback); diff --git a/src/devices/cpu/tlcs900/tlcs900.h b/src/devices/cpu/tlcs900/tlcs900.h index f2cfa8d3723..a3ce3d5fa67 100644 --- a/src/devices/cpu/tlcs900/tlcs900.h +++ b/src/devices/cpu/tlcs900/tlcs900.h @@ -51,8 +51,8 @@ protected: tlcs900_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } /* FIXME */ @@ -644,7 +644,7 @@ protected: tlcs900h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual int tlcs900_gpr_cycles() const override { return 1; } virtual int tlcs900_mem_index_cycles() const override { return 1; } diff --git a/src/devices/cpu/tlcs900/tmp95c061.h b/src/devices/cpu/tlcs900/tmp95c061.h index fc59747457e..7b52057fa2d 100644 --- a/src/devices/cpu/tlcs900/tmp95c061.h +++ b/src/devices/cpu/tlcs900/tmp95c061.h @@ -48,8 +48,8 @@ public: protected: virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual void tlcs900_check_hdma() override; @@ -133,7 +133,7 @@ private: uint8_t dmemcr_r(); void dmemcr_w(uint8_t data); - void internal_mem(address_map &map); + void internal_mem(address_map &map) ATTR_COLD; // analogue inputs, sampled at 10 bits devcb_read16::array<4> m_an_read; diff --git a/src/devices/cpu/tlcs900/tmp95c063.h b/src/devices/cpu/tlcs900/tmp95c063.h index 47782529d4e..acbcfc10f3c 100644 --- a/src/devices/cpu/tlcs900/tmp95c063.h +++ b/src/devices/cpu/tlcs900/tmp95c063.h @@ -58,8 +58,8 @@ public: protected: virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void execute_set_input(int inputnum, int state) override; virtual void tlcs900_check_hdma() override; @@ -158,7 +158,7 @@ private: void dadrv_w(uint8_t data); void dareg_w(offs_t offset, uint8_t data); - void internal_mem(address_map &map); + void internal_mem(address_map &map) ATTR_COLD; // analogue inputs, sampled at 10 bits devcb_read16::array<8> m_an_read; diff --git a/src/devices/cpu/tlcs900/tmp96c141.h b/src/devices/cpu/tlcs900/tmp96c141.h index 973693a201b..4710820f71e 100644 --- a/src/devices/cpu/tlcs900/tmp96c141.h +++ b/src/devices/cpu/tlcs900/tmp96c141.h @@ -76,8 +76,8 @@ public: protected: // device-level overrides virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_set_input(int inputnum, int state) override; @@ -89,7 +89,7 @@ protected: virtual void tlcs900_handle_timers() override; private: - void internal_mem(address_map &map); + void internal_mem(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/tms1000/smc1102.h b/src/devices/cpu/tms1000/smc1102.h index 585b70a12b0..b94f4b7807f 100644 --- a/src/devices/cpu/tms1000/smc1102.h +++ b/src/devices/cpu/tms1000/smc1102.h @@ -52,8 +52,8 @@ protected: smc1102_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_add_mconfig(machine_config &config) override { } virtual void execute_set_input(int line, int state) override; diff --git a/src/devices/cpu/tms1000/tms0270.h b/src/devices/cpu/tms1000/tms0270.h index e6f3f89197e..f47b4bb3c2b 100644 --- a/src/devices/cpu/tms1000/tms0270.h +++ b/src/devices/cpu/tms1000/tms0270.h @@ -21,10 +21,10 @@ public: protected: // overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void write_o_reg(u8 index) override { tms1k_base_device::write_o_reg(index); } virtual u8 read_k_input() override; diff --git a/src/devices/cpu/tms1000/tms0970.h b/src/devices/cpu/tms1000/tms0970.h index 583a9480e91..901f092b88e 100644 --- a/src/devices/cpu/tms1000/tms0970.h +++ b/src/devices/cpu/tms1000/tms0970.h @@ -23,8 +23,8 @@ protected: tms0970_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void write_o_reg(u8 index) override; @@ -40,7 +40,7 @@ public: protected: // overrides virtual void device_reset() override { tms1000_cpu_device::device_reset(); } - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void op_rstr() override { } // assume it has no RSTR or CLO virtual void op_clo() override { } // " diff --git a/src/devices/cpu/tms1000/tms0980.h b/src/devices/cpu/tms1000/tms0980.h index b2d8b4c106d..87ab670af28 100644 --- a/src/devices/cpu/tms1000/tms0980.h +++ b/src/devices/cpu/tms1000/tms0980.h @@ -46,14 +46,14 @@ public: protected: tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); - void ram_144x4(address_map &map); + void ram_144x4(address_map &map) ATTR_COLD; // overrides virtual u32 decode_fixed(offs_t offset); virtual u32 decode_micro(offs_t offset) override; - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -78,7 +78,7 @@ public: protected: // overrides - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void write_o_reg(u8 index) override { tms1k_base_device::write_o_reg(index); } diff --git a/src/devices/cpu/tms1000/tms1000.h b/src/devices/cpu/tms1000/tms1000.h index c850b98e6d0..3faeb98d96e 100644 --- a/src/devices/cpu/tms1000/tms1000.h +++ b/src/devices/cpu/tms1000/tms1000.h @@ -68,12 +68,12 @@ public: protected: tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); - void rom_9bitm(address_map &map); - void ram_32x4(address_map &map); + void rom_9bitm(address_map &map) ATTR_COLD; + void ram_32x4(address_map &map) ATTR_COLD; // overrides - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual u32 decode_micro(offs_t offset); @@ -100,7 +100,7 @@ public: protected: tms1070_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void write_o_output(u16 data) override { tms1000_cpu_device::write_o_output(bitswap<10>(data,0,1,9,8,7,6,5,4,3,2)); } }; diff --git a/src/devices/cpu/tms1000/tms1000c.h b/src/devices/cpu/tms1000/tms1000c.h index b698a575615..35539a257ed 100644 --- a/src/devices/cpu/tms1000/tms1000c.h +++ b/src/devices/cpu/tms1000/tms1000c.h @@ -21,7 +21,7 @@ public: protected: // overrides - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual u32 decode_micro(offs_t offset) override; }; diff --git a/src/devices/cpu/tms1000/tms1100.h b/src/devices/cpu/tms1000/tms1100.h index c421a562d58..534f436275a 100644 --- a/src/devices/cpu/tms1000/tms1100.h +++ b/src/devices/cpu/tms1000/tms1100.h @@ -69,8 +69,8 @@ protected: tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/tms1000/tms1400.h b/src/devices/cpu/tms1000/tms1400.h index acac9ea4ca1..47e5a123624 100644 --- a/src/devices/cpu/tms1000/tms1400.h +++ b/src/devices/cpu/tms1000/tms1400.h @@ -47,8 +47,8 @@ protected: tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/tms1000/tms1k_base.h b/src/devices/cpu/tms1000/tms1k_base.h index 01437ba9d4d..1d749ebd1e7 100644 --- a/src/devices/cpu/tms1000/tms1k_base.h +++ b/src/devices/cpu/tms1000/tms1k_base.h @@ -55,8 +55,8 @@ protected: tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u32 execute_min_cycles() const noexcept override { return 1; } @@ -138,12 +138,12 @@ protected: F_EXTRA = (1ULL << 28), // custom opcodes }; - void rom_10bit(address_map &map); - void rom_11bit(address_map &map); - void rom_12bit(address_map &map); - void ram_6bit(address_map &map); - void ram_7bit(address_map &map); - void ram_8bit(address_map &map); + void rom_10bit(address_map &map) ATTR_COLD; + void rom_11bit(address_map &map) ATTR_COLD; + void rom_12bit(address_map &map) ATTR_COLD; + void ram_6bit(address_map &map) ATTR_COLD; + void ram_7bit(address_map &map) ATTR_COLD; + void ram_8bit(address_map &map) ATTR_COLD; void next_pc(); diff --git a/src/devices/cpu/tms1000/tms2100.h b/src/devices/cpu/tms1000/tms2100.h index 9cf2c9eb61d..886ea90684a 100644 --- a/src/devices/cpu/tms1000/tms2100.h +++ b/src/devices/cpu/tms1000/tms2100.h @@ -75,9 +75,9 @@ protected: tms2100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void device_clock_changed() override { reset_prescaler(); } virtual void execute_set_input(int line, int state) override; diff --git a/src/devices/cpu/tms1000/tms2400.h b/src/devices/cpu/tms1000/tms2400.h index 25692d3207e..91be18e6b5c 100644 --- a/src/devices/cpu/tms1000/tms2400.h +++ b/src/devices/cpu/tms1000/tms2400.h @@ -23,7 +23,7 @@ protected: tms2400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/tms1000/tp0320.h b/src/devices/cpu/tms1000/tp0320.h index c972e009b1b..c08676fb286 100644 --- a/src/devices/cpu/tms1000/tp0320.h +++ b/src/devices/cpu/tms1000/tp0320.h @@ -20,15 +20,15 @@ public: tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); protected: - void ram_192x4(address_map &map); + void ram_192x4(address_map &map) ATTR_COLD; // overrides virtual u32 decode_fixed(offs_t offset) override { return 0; } // not yet virtual u32 decode_micro(offs_t offset) override; - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; }; diff --git a/src/devices/cpu/tms32010/tms32010.h b/src/devices/cpu/tms32010/tms32010.h index 7eb7a435349..b240c0b3ab8 100644 --- a/src/devices/cpu/tms32010/tms32010.h +++ b/src/devices/cpu/tms32010/tms32010.h @@ -39,8 +39,8 @@ protected: tms3201x_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor data_map); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -59,8 +59,8 @@ protected: // device_disasm_interface implementation virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void tms32010_ram(address_map &map); - void tms32015_ram(address_map &map); + void tms32010_ram(address_map &map) ATTR_COLD; + void tms32015_ram(address_map &map) ATTR_COLD; private: address_space_config m_program_config; diff --git a/src/devices/cpu/tms32025/tms32025.h b/src/devices/cpu/tms32025/tms32025.h index 1aa602a838f..687675f74f1 100644 --- a/src/devices/cpu/tms32025/tms32025.h +++ b/src/devices/cpu/tms32025/tms32025.h @@ -69,17 +69,17 @@ public: auto dr_in_cb() { return m_dr_in.bind(); } auto dx_out_cb() { return m_dx_out.bind(); } - //void tms32025_program(address_map &map); - void tms3202x_data(address_map &map); - void tms32026_data(address_map &map); + //void tms32025_program(address_map &map) ATTR_COLD; + void tms3202x_data(address_map &map) ATTR_COLD; + void tms32026_data(address_map &map) ATTR_COLD; protected: // construction/destruction tms3202x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, unsigned stack_depth, address_map_constructor prgmap, address_map_constructor datamap); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 4; } @@ -380,9 +380,9 @@ protected: tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor prgmap, address_map_constructor datamap); // device_t implementation - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; - virtual const tiny_rom_entry *device_rom_region() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; bool m_mp_mc; }; @@ -394,7 +394,7 @@ public: tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; virtual void cnfd() override; virtual void cnfp() override; virtual void conf() override; diff --git a/src/devices/cpu/tms32031/tms32031.h b/src/devices/cpu/tms32031/tms32031.h index 39852736baf..282ac81b7d2 100644 --- a/src/devices/cpu/tms32031/tms32031.h +++ b/src/devices/cpu/tms32031/tms32031.h @@ -144,13 +144,13 @@ protected: // construction/destruction tms3203x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype, int clock_per_inst, address_map_constructor internal_map); - void common_3203x(address_map &map); + void common_3203x(address_map &map) ATTR_COLD; // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; - virtual const tiny_rom_entry *device_rom_region() const override; + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override; @@ -803,7 +803,7 @@ class tms32030_device : public tms3203x_device public: // construction/destruction tms32030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void internal_32030(address_map &map); + void internal_32030(address_map &map) ATTR_COLD; }; @@ -814,7 +814,7 @@ class tms32031_device : public tms3203x_device public: // construction/destruction tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void internal_32031(address_map &map); + void internal_32031(address_map &map) ATTR_COLD; }; @@ -825,7 +825,7 @@ class tms32032_device : public tms3203x_device public: // construction/destruction tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void internal_32032(address_map &map); + void internal_32032(address_map &map) ATTR_COLD; }; @@ -836,7 +836,7 @@ class tms32033_device : public tms3203x_device public: // construction/destruction tms32033_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void internal_32033(address_map &map); + void internal_32033(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/tms32051/tms32051.h b/src/devices/cpu/tms32051/tms32051.h index b1088011ef9..f3df84fa4d3 100644 --- a/src/devices/cpu/tms32051/tms32051.h +++ b/src/devices/cpu/tms32051/tms32051.h @@ -62,14 +62,14 @@ public: uint16_t cpuregs_r(offs_t offset); void cpuregs_w(offs_t offset, uint16_t data); - void tms32051_internal_data(address_map &map); - void tms32051_internal_pgm(address_map &map); + void tms32051_internal_data(address_map &map) ATTR_COLD; + void tms32051_internal_pgm(address_map &map) ATTR_COLD; protected: tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_pgm, address_map_constructor internal_data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -374,10 +374,10 @@ public: // construction/destruction tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - void tms32053_internal_data(address_map &map); - void tms32053_internal_pgm(address_map &map); + void tms32053_internal_data(address_map &map) ATTR_COLD; + void tms32053_internal_pgm(address_map &map) ATTR_COLD; protected: - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; diff --git a/src/devices/cpu/tms32082/tms32082.h b/src/devices/cpu/tms32082/tms32082.h index a02ffadf6aa..7a66698d9d6 100644 --- a/src/devices/cpu/tms32082/tms32082.h +++ b/src/devices/cpu/tms32082/tms32082.h @@ -73,11 +73,11 @@ public: template <typename... T> void set_command_callback(T &&... args) { m_cmd_callback.set(std::forward<T>(args)...); } - void mp_internal_map(address_map &map); + void mp_internal_map(address_map &map) ATTR_COLD; protected: // device level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -163,11 +163,11 @@ public: PP_PC = 1 }; - void pp_internal_map(address_map &map); + void pp_internal_map(address_map &map) ATTR_COLD; protected: // device level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/tms34010/tms34010.h b/src/devices/cpu/tms34010/tms34010.h index 672aada9ee3..f53843e3452 100644 --- a/src/devices/cpu/tms34010/tms34010.h +++ b/src/devices/cpu/tms34010/tms34010.h @@ -255,8 +255,8 @@ protected: tms340x0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_regs_map, bool is_34020); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; // device_execute_interface overrides @@ -965,12 +965,12 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 8 - 1) / 8; } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 8); } virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void internal_regs_map(address_map &map); + void internal_regs_map(address_map &map) ATTR_COLD; virtual uint16_t ROPCODE() override; virtual void execute_op(uint16_t op) override; @@ -1005,12 +1005,12 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 4 - 1) / 4; } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 4); } virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void internal_regs_map(address_map &map); + void internal_regs_map(address_map &map) ATTR_COLD; virtual uint16_t ROPCODE() override; virtual void execute_op(uint16_t op) override; diff --git a/src/devices/cpu/tms57002/tms57002.h b/src/devices/cpu/tms57002/tms57002.h index d991a5283c7..7a6dce18416 100644 --- a/src/devices/cpu/tms57002/tms57002.h +++ b/src/devices/cpu/tms57002/tms57002.h @@ -31,11 +31,11 @@ public: int pc0_r(); void sync_w(int state); - void internal_pgm(address_map &map); + void internal_pgm(address_map &map) ATTR_COLD; protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void sound_stream_update(sound_stream &stream, std::vector<read_stream_view> const &inputs, std::vector<write_stream_view> &outputs) override; virtual space_config_vector memory_space_config() const override; virtual u32 execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/tms7000/tms7000.h b/src/devices/cpu/tms7000/tms7000.h index 54826965f2c..a6b22f8d5a5 100644 --- a/src/devices/cpu/tms7000/tms7000.h +++ b/src/devices/cpu/tms7000/tms7000.h @@ -60,13 +60,13 @@ public: bool chip_is_family_70x2() const { return chip_get_family() == CHIP_FAMILY_70X2; } bool chip_is_family_70cx2() const { return chip_get_family() == CHIP_FAMILY_70CX2; } - void tms7000_mem(address_map &map); - void tms7001_mem(address_map &map); - void tms7002_mem(address_map &map); - void tms7020_mem(address_map &map); - void tms7040_mem(address_map &map); - void tms7041_mem(address_map &map); - void tms7042_mem(address_map &map); + void tms7000_mem(address_map &map) ATTR_COLD; + void tms7001_mem(address_map &map) ATTR_COLD; + void tms7002_mem(address_map &map) ATTR_COLD; + void tms7020_mem(address_map &map) ATTR_COLD; + void tms7040_mem(address_map &map) ATTR_COLD; + void tms7041_mem(address_map &map) ATTR_COLD; + void tms7042_mem(address_map &map) ATTR_COLD; protected: // chip info flags static constexpr uint32_t CHIP_IS_CMOS = 0x01; @@ -78,8 +78,8 @@ protected: tms7000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal, uint32_t info_flags); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + m_divider - 1) / m_divider; } @@ -336,11 +336,11 @@ public: uint8_t e_bus_data_r() { return machine().side_effects_disabled() ? 0xff : ((m_control & 0x20) ? 0xff : m_port_in_cb[4]()); } void e_bus_data_w(uint8_t data) { if (~m_control & 0x20) m_port_out_cb[4](data); } - void tms70c46_mem(address_map &map); + void tms70c46_mem(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: uint8_t m_control; diff --git a/src/devices/cpu/tx0/tx0.h b/src/devices/cpu/tx0/tx0.h index 8c57c08e8f7..035c44476af 100644 --- a/src/devices/cpu/tx0/tx0.h +++ b/src/devices/cpu/tx0/tx0.h @@ -44,8 +44,8 @@ protected: tx0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addr_bits, int address_mask, int ir_mask); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/ucom4/ucom4.h b/src/devices/cpu/ucom4/ucom4.h index adadec64ddc..686b8293996 100644 --- a/src/devices/cpu/ucom4/ucom4.h +++ b/src/devices/cpu/ucom4/ucom4.h @@ -84,8 +84,8 @@ protected: ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 4 - 1) / 4; } // 4 cycles per machine cycle @@ -105,10 +105,10 @@ protected: virtual void state_string_export(const device_state_entry &entry, std::string &str) const override; // memorymaps - void program_1k(address_map &map); - void program_2k(address_map &map); - void data_64x4(address_map &map); - void data_96x4(address_map &map); + void program_1k(address_map &map) ATTR_COLD; + void program_2k(address_map &map) ATTR_COLD; + void data_64x4(address_map &map) ATTR_COLD; + void data_96x4(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_data_config; diff --git a/src/devices/cpu/unsp/unsp.h b/src/devices/cpu/unsp/unsp.h index 9be731e556f..b7b72a3cf5a 100644 --- a/src/devices/cpu/unsp/unsp.h +++ b/src/devices/cpu/unsp/unsp.h @@ -124,9 +124,9 @@ protected: unsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_stop() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_stop() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } @@ -394,8 +394,8 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_extended_group(uint16_t op) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: enum diff --git a/src/devices/cpu/upd7725/upd7725.h b/src/devices/cpu/upd7725/upd7725.h index c3049220b40..7e70e5642c5 100644 --- a/src/devices/cpu/upd7725/upd7725.h +++ b/src/devices/cpu/upd7725/upd7725.h @@ -44,8 +44,8 @@ protected: necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t abits, uint32_t dbits); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override; diff --git a/src/devices/cpu/upd7810/upd7810.h b/src/devices/cpu/upd7810/upd7810.h index a71d5087017..14b6aa29272 100644 --- a/src/devices/cpu/upd7810/upd7810.h +++ b/src/devices/cpu/upd7810/upd7810.h @@ -86,10 +86,10 @@ public: void sck_w(int state); protected: - void upd_internal_128_ram_map(address_map &map); - void upd_internal_256_ram_map(address_map &map); - void upd_internal_4096_rom_128_ram_map(address_map &map); - void upd_internal_4096_rom_256_ram_map(address_map &map); + void upd_internal_128_ram_map(address_map &map) ATTR_COLD; + void upd_internal_256_ram_map(address_map &map) ATTR_COLD; + void upd_internal_4096_rom_128_ram_map(address_map &map) ATTR_COLD; + void upd_internal_4096_rom_256_ram_map(address_map &map) ATTR_COLD; // flags enum @@ -136,8 +136,8 @@ protected: upd7810_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 3 - 1) / 3; } @@ -1401,8 +1401,8 @@ public: upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 2); } virtual void execute_set_input(int inputnum, int state) override; @@ -1422,8 +1422,8 @@ public: protected: upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 4 - 1) / 4; } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 4); } virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/upd78k/upd78k0.h b/src/devices/cpu/upd78k/upd78k0.h index 566dfab340f..d0b5acb506c 100644 --- a/src/devices/cpu/upd78k/upd78k0.h +++ b/src/devices/cpu/upd78k/upd78k0.h @@ -36,8 +36,8 @@ protected: upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -50,7 +50,7 @@ protected: private: // internal memory map - void iram_map(address_map &map); + void iram_map(address_map &map) ATTR_COLD; // internal helpers inline u16 register_base() const noexcept; @@ -97,8 +97,8 @@ protected: private: // type-specific internal memory maps - void mem_map(address_map &map); - void sfr_map(address_map &map); + void mem_map(address_map &map) ATTR_COLD; + void sfr_map(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/upd78k/upd78k2.h b/src/devices/cpu/upd78k/upd78k2.h index c0a8e07b825..48210a28124 100644 --- a/src/devices/cpu/upd78k/upd78k2.h +++ b/src/devices/cpu/upd78k/upd78k2.h @@ -35,8 +35,8 @@ protected: upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -51,7 +51,7 @@ protected: private: // internal memory map - void iram_map(address_map &map); + void iram_map(address_map &map) ATTR_COLD; // internal helpers inline u8 register_base() const noexcept; @@ -88,7 +88,7 @@ protected: private: // type-specific internal memory maps - void sfr_map(address_map &map); + void sfr_map(address_map &map) ATTR_COLD; }; // ======================> upd78213_device @@ -105,8 +105,8 @@ protected: private: // type-specific internal memory maps - void mem_map(address_map &map); - void sfr_map(address_map &map); + void mem_map(address_map &map) ATTR_COLD; + void sfr_map(address_map &map) ATTR_COLD; }; // device type declarations diff --git a/src/devices/cpu/upd78k/upd78k3.h b/src/devices/cpu/upd78k/upd78k3.h index 22867376847..234b427a7d1 100644 --- a/src/devices/cpu/upd78k/upd78k3.h +++ b/src/devices/cpu/upd78k/upd78k3.h @@ -42,8 +42,8 @@ protected: upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -60,7 +60,7 @@ protected: private: // internal memory map - void iram_map(address_map &map); + void iram_map(address_map &map) ATTR_COLD; // internal helpers inline u8 register_base() const noexcept; @@ -112,8 +112,8 @@ protected: private: // type-specific internal memory maps - void mem_map(address_map &map); - void sfr_map(address_map &map); + void mem_map(address_map &map) ATTR_COLD; + void sfr_map(address_map &map) ATTR_COLD; }; // ======================> upd78310_device diff --git a/src/devices/cpu/upd78k/upd78k4.h b/src/devices/cpu/upd78k/upd78k4.h index 435600b563c..edf30005ed9 100644 --- a/src/devices/cpu/upd78k/upd78k4.h +++ b/src/devices/cpu/upd78k/upd78k4.h @@ -44,8 +44,8 @@ protected: upd78k4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -60,7 +60,7 @@ protected: private: // internal memory map - void iram_map(address_map &map); + void iram_map(address_map &map) ATTR_COLD; // internal helpers inline u16 register_base() const noexcept; @@ -100,8 +100,8 @@ protected: private: // type-specific internal memory maps - void mem_map(address_map &map); - void sfr_map(address_map &map); + void mem_map(address_map &map) ATTR_COLD; + void sfr_map(address_map &map) ATTR_COLD; }; // device type declaration diff --git a/src/devices/cpu/v30mz/v30mz.h b/src/devices/cpu/v30mz/v30mz.h index cdfa6ae7539..ab342184273 100644 --- a/src/devices/cpu/v30mz/v30mz.h +++ b/src/devices/cpu/v30mz/v30mz.h @@ -29,8 +29,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/v60/v60.h b/src/devices/cpu/v60/v60.h index 3e44568e218..9e28eff0bbd 100644 --- a/src/devices/cpu/v60/v60.h +++ b/src/devices/cpu/v60/v60.h @@ -92,8 +92,8 @@ protected: v60_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int databits, int addrbits, uint32_t pir); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 1; } diff --git a/src/devices/cpu/v810/v810.h b/src/devices/cpu/v810/v810.h index 4451b998119..29940c6d1e3 100644 --- a/src/devices/cpu/v810/v810.h +++ b/src/devices/cpu/v810/v810.h @@ -87,8 +87,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 3; } diff --git a/src/devices/cpu/vt50/vt50.h b/src/devices/cpu/vt50/vt50.h index fcb7fc1d91c..b4a5e7e8741 100644 --- a/src/devices/cpu/vt50/vt50.h +++ b/src/devices/cpu/vt50/vt50.h @@ -42,8 +42,8 @@ protected: // device_t implementation virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual void execute_run() override; diff --git a/src/devices/cpu/vt61/vt61.h b/src/devices/cpu/vt61/vt61.h index 971343fe095..ced1a984fea 100644 --- a/src/devices/cpu/vt61/vt61.h +++ b/src/devices/cpu/vt61/vt61.h @@ -31,8 +31,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/we32000/we32100.h b/src/devices/cpu/we32000/we32100.h index c34afc4279e..cae514319a4 100644 --- a/src/devices/cpu/we32000/we32100.h +++ b/src/devices/cpu/we32000/we32100.h @@ -26,8 +26,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; diff --git a/src/devices/cpu/xa/xa.h b/src/devices/cpu/xa/xa.h index 71b239a404d..bf09ec1c5f4 100644 --- a/src/devices/cpu/xa/xa.h +++ b/src/devices/cpu/xa/xa.h @@ -55,8 +55,8 @@ public: protected: xa_cpu(const machine_config& mconfig, device_type type, const char* tag, device_t* owner, uint32_t clock, address_map_constructor prg_map, address_map_constructor dat_map); - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override { return 1; } virtual uint32_t execute_max_cycles() const noexcept override { return 5; } @@ -68,10 +68,10 @@ protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; private: - void internal_map(address_map &map); - void internal_data_map(address_map &map); - void data_map(address_map &map); - void sfr_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; + void internal_data_map(address_map &map) ATTR_COLD; + void data_map(address_map &map) ATTR_COLD; + void sfr_map(address_map &map) ATTR_COLD; address_space_config m_program_config; address_space_config m_data_config; @@ -956,8 +956,8 @@ public: mx10exa_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); private: - void mx10exa_internal_map(address_map &map); - void mx10exa_internal_data_map(address_map &map); + void mx10exa_internal_map(address_map &map) ATTR_COLD; + void mx10exa_internal_data_map(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/xavix2/xavix2.h b/src/devices/cpu/xavix2/xavix2.h index 12d74c78e2e..459a6180fdd 100644 --- a/src/devices/cpu/xavix2/xavix2.h +++ b/src/devices/cpu/xavix2/xavix2.h @@ -27,8 +27,8 @@ protected: static const u8 bpo[8]; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual uint32_t execute_min_cycles() const noexcept override; virtual uint32_t execute_max_cycles() const noexcept override; virtual void execute_run() override; diff --git a/src/devices/cpu/xtensa/xtensa.h b/src/devices/cpu/xtensa/xtensa.h index fc0e1d46c26..332ae4e77cd 100644 --- a/src/devices/cpu/xtensa/xtensa.h +++ b/src/devices/cpu/xtensa/xtensa.h @@ -41,8 +41,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual void execute_run() override; @@ -135,7 +135,7 @@ private: void set_callinc(u8 val); u8 get_callinc(); - void ext_regs(address_map &map); + void ext_regs(address_map &map) ATTR_COLD; bool handle_bz(u32 inst); void handle_retw(); diff --git a/src/devices/cpu/z180/hd647180x.h b/src/devices/cpu/z180/hd647180x.h index ca122201a5e..0916a240b7c 100644 --- a/src/devices/cpu/z180/hd647180x.h +++ b/src/devices/cpu/z180/hd647180x.h @@ -43,8 +43,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // z180_device overrides virtual uint8_t z180_internal_port_read(uint8_t port) override; @@ -52,7 +52,7 @@ protected: private: // internal memory map - void internal_map(address_map &map); + void internal_map(address_map &map) ATTR_COLD; // port callbacks devcb_read8::array<7> m_port_input_cb; diff --git a/src/devices/cpu/z180/z180.h b/src/devices/cpu/z180/z180.h index 4a8e0e5e4a5..d55c32efe0c 100644 --- a/src/devices/cpu/z180/z180.h +++ b/src/devices/cpu/z180/z180.h @@ -135,9 +135,9 @@ protected: z180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool extended_io, address_map_constructor internal_map); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // device_execute_interface implementation virtual uint32_t execute_min_cycles() const noexcept override { return 1; } @@ -1833,10 +1833,10 @@ protected: z8s180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_clock_changed() override; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; // device_execute_interface implementation virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return BIT(m_cmr, 7) ? (clocks * 2) : BIT(m_ccr, 7) ? clocks : (clocks + 2 - 1) / 2; } diff --git a/src/devices/cpu/z180/z180asci.h b/src/devices/cpu/z180/z180asci.h index b99eec339ee..4dcd74112b7 100644 --- a/src/devices/cpu/z180/z180asci.h +++ b/src/devices/cpu/z180/z180asci.h @@ -53,8 +53,8 @@ protected: z180asci_channel_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const int id, const bool ext); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_clock_changed() override; void transmit_edge(); @@ -144,7 +144,7 @@ protected: z180asci_channel_0(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext); // device_t implementation - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; //************************************************************************** @@ -164,7 +164,7 @@ protected: z180asci_channel_1(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext); // device_t implementation - virtual void device_reset() override; + virtual void device_reset() override ATTR_COLD; }; //************************************************************************** diff --git a/src/devices/cpu/z180/z180csio.h b/src/devices/cpu/z180/z180csio.h index 3cc1c53393f..8a73eab8877 100644 --- a/src/devices/cpu/z180/z180csio.h +++ b/src/devices/cpu/z180/z180csio.h @@ -37,9 +37,9 @@ public: protected: // device_t implementation - virtual void device_resolve_objects() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_resolve_objects() override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; void clock_edge(u8 cks); diff --git a/src/devices/cpu/z8/z8.h b/src/devices/cpu/z8/z8.h index 1074801c557..c50b40b140b 100644 --- a/src/devices/cpu/z8/z8.h +++ b/src/devices/cpu/z8/z8.h @@ -42,8 +42,8 @@ protected: z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, bool preprogrammed); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 6; } @@ -64,9 +64,9 @@ protected: // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; - void program_map(address_map &map); - void preprogrammed_map(address_map &map); - void register_map(address_map &map); + void program_map(address_map &map) ATTR_COLD; + void preprogrammed_map(address_map &map) ATTR_COLD; + void register_map(address_map &map) ATTR_COLD; private: address_space_config m_program_config; diff --git a/src/devices/cpu/z80/kc82.h b/src/devices/cpu/z80/kc82.h index 3c7f05cd70d..a1a30b07ac6 100644 --- a/src/devices/cpu/z80/kc82.h +++ b/src/devices/cpu/z80/kc82.h @@ -32,8 +32,8 @@ protected: kc82_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor io_map); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; // device_memory_interface overrides diff --git a/src/devices/cpu/z80/kl5c80a12.h b/src/devices/cpu/z80/kl5c80a12.h index 2d3884ad409..1a6340c6045 100644 --- a/src/devices/cpu/z80/kl5c80a12.h +++ b/src/devices/cpu/z80/kl5c80a12.h @@ -51,10 +51,10 @@ public: protected: // device_t implementation - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) / 2; } @@ -73,8 +73,8 @@ private: void portb_update_output(unsigned n); // internal address maps - void internal_ram(address_map &map); - void internal_io(address_map &map); + void internal_ram(address_map &map) ATTR_COLD; + void internal_io(address_map &map) ATTR_COLD; // subdevice finders required_device<kp69_device> m_kp69; diff --git a/src/devices/cpu/z80/kl5c80a16.h b/src/devices/cpu/z80/kl5c80a16.h index a7cd2178396..10ba3df08f4 100644 --- a/src/devices/cpu/z80/kl5c80a16.h +++ b/src/devices/cpu/z80/kl5c80a16.h @@ -48,10 +48,10 @@ public: protected: // device_t implementation - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; virtual void device_config_complete() override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface implementation virtual u64 execute_clocks_to_cycles(u64 clocks) const noexcept override { return (clocks + 2 - 1) / 2; } @@ -63,7 +63,7 @@ private: void port_w(offs_t offset, u8 data); // internal address map - void internal_io(address_map &map); + void internal_io(address_map &map) ATTR_COLD; // subdevice finders required_device<kp69_device> m_kp69; diff --git a/src/devices/cpu/z80/kp63.h b/src/devices/cpu/z80/kp63.h index 93e2779d668..7d58017b6fa 100644 --- a/src/devices/cpu/z80/kp63.h +++ b/src/devices/cpu/z80/kp63.h @@ -35,8 +35,8 @@ protected: kp63_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 num_counters, u8 mode_mask); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: static const char *const s_count_modes[4]; diff --git a/src/devices/cpu/z80/kp64.h b/src/devices/cpu/z80/kp64.h index d8a76dc91b6..53391c6dbc0 100644 --- a/src/devices/cpu/z80/kp64.h +++ b/src/devices/cpu/z80/kp64.h @@ -37,8 +37,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: // timer callbacks diff --git a/src/devices/cpu/z80/kp69.h b/src/devices/cpu/z80/kp69.h index 31bfbd71fea..ad93c6a86af 100644 --- a/src/devices/cpu/z80/kp69.h +++ b/src/devices/cpu/z80/kp69.h @@ -44,8 +44,8 @@ protected: kp69_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_z80daisy_interface implementation virtual int z80daisy_irq_state() override; @@ -91,8 +91,8 @@ public: protected: // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; private: bool m_ivr_written; diff --git a/src/devices/cpu/z80/ky80.h b/src/devices/cpu/z80/ky80.h index fce065a9c8f..2f5cef749f2 100644 --- a/src/devices/cpu/z80/ky80.h +++ b/src/devices/cpu/z80/ky80.h @@ -31,8 +31,8 @@ protected: private: // internal address maps - void internal_ram(address_map &map); - void internal_io(address_map &map); + void internal_ram(address_map &map) ATTR_COLD; + void internal_io(address_map &map) ATTR_COLD; }; diff --git a/src/devices/cpu/z80/lz8420m.h b/src/devices/cpu/z80/lz8420m.h index afa653c340d..50941b8a2b2 100644 --- a/src/devices/cpu/z80/lz8420m.h +++ b/src/devices/cpu/z80/lz8420m.h @@ -33,9 +33,9 @@ public: protected: // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; }; diff --git a/src/devices/cpu/z80/tmpz84c011.h b/src/devices/cpu/z80/tmpz84c011.h index 8349905d5b9..a6909e0d697 100644 --- a/src/devices/cpu/z80/tmpz84c011.h +++ b/src/devices/cpu/z80/tmpz84c011.h @@ -79,12 +79,12 @@ public: void tmpz84c011_dir_pd_w(uint8_t data) { m_pio_dir[3] = data; } void tmpz84c011_dir_pe_w(uint8_t data) { m_pio_dir[4] = data; } - void tmpz84c011_internal_io_map(address_map &map); + void tmpz84c011_internal_io_map(address_map &map) ATTR_COLD; protected: // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; const address_space_config m_io_space_config; diff --git a/src/devices/cpu/z80/tmpz84c015.h b/src/devices/cpu/z80/tmpz84c015.h index 449b9cd2725..03c688519bd 100644 --- a/src/devices/cpu/z80/tmpz84c015.h +++ b/src/devices/cpu/z80/tmpz84c015.h @@ -116,9 +116,9 @@ protected: tmpz84c015_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor io_map); // device-level overrides - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void device_post_load() override; const address_space_config m_io_space_config; diff --git a/src/devices/cpu/z80/z80n.h b/src/devices/cpu/z80/z80n.h index d2247a066c2..a7db99722a9 100644 --- a/src/devices/cpu/z80/z80n.h +++ b/src/devices/cpu/z80/z80n.h @@ -23,8 +23,8 @@ public: void nmi() { m_nmi_pending = true; } protected: - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; virtual void do_op() override; diff --git a/src/devices/cpu/z80/z84c015.h b/src/devices/cpu/z80/z84c015.h index 0e5c71cb11c..4443cdfc7cd 100644 --- a/src/devices/cpu/z80/z84c015.h +++ b/src/devices/cpu/z80/z84c015.h @@ -32,7 +32,7 @@ public: protected: // device-level overrides - virtual void device_start() override; + virtual void device_start() override ATTR_COLD; const address_space_config m_program_space_config; const address_space_config m_opcodes_space_config; diff --git a/src/devices/cpu/z8000/z8000.h b/src/devices/cpu/z8000/z8000.h index 4d53285d31d..c8ba14a9157 100644 --- a/src/devices/cpu/z8000/z8000.h +++ b/src/devices/cpu/z8000/z8000.h @@ -90,8 +90,8 @@ protected: z8002_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, int vecmult); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 2; } |
