summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/drcuml.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Cleaned up build scripts and compiling documentation: Vas Crabb2025-04-201-7/+13
| | | | | | | | | | | | | | | | | | | * Made it a bit easier to cross-compile for x86-64 or i686 on an AArch64 Windows system. * Choose the default native recompiler back-end based on predefined macros rather than requiring the build scripts to set it. * Don't require every target without a native recompiler to declare this. * Got rid of the code that was supposed to set -m32 or -m64 when building GENie (it didn't work - it tried to use ARCHITECTURE before setting it). * Avoid relying on the unreliable PROCESSOR_ARCHITECTURE environment variable. * Got rid of stuff for versions of Xcode that are definitely no longer supported. * Got rid of workarounds for very old Linux distros. * Use newer makefile syntax for if/else/if structures, comment some else and endif statements for clarity.
* -misc/dgpix.cpp: Marked Elfin as having unemulated protection. Vas Crabb2025-04-171-631/+15
| | | | | | | | | | | | * Elfin will eventually get into a state where it ignores coins. Protection is conceptually similar to The X-Files. -cpu/uml.cpp, cpu/drcuml.cpp: Made it possible to build with logging simplifications enabled (in uml.cpp it logs each step, in drcuml.cpp it logs the net change). It will produce absoluely massive logs, though. -cpu/drcuml.cpp: Removed woefully inadequate and badly rotted "backend validation" code.
* cpu: Moved DRC backend declarations out of headers and into anonymous ↵ Vas Crabb2025-02-221-6/+7
| | | | namespaces.
* cpu/drcbeut.cpp: Removed static address space accessors. Vas Crabb2025-02-031-6/+0
| | | | | | cpu/drcbex64.cpp: Removed fallback to static address space accessors. cpu/drcbex86.cpp: Fixed regression in FWRITE.
* cpu/drcbearm64.cpp: Added a 64-bit ARMv8 (AArch64) DRC back-end. (#13162) 9871238791132025-01-141-0/+3
| | | | | * cpu/uml.cpp: Removed unused vector type. * 3rdparty/asmjit: Update asmjit to latest upstream. * cpu/drcbex64.cpp: Fixed crash with LOG_HASHJMPS enabled (stack needs to be 16-byte aligned before calling debug_log_hashjmp_fail).
* Various optimisations to code generaton. Vas Crabb2023-03-261-1/+1
| | | | | | | | | | | | | | | util/bitmap.cpp, util/palette.cpp: Marked lots of things constexpr. Bitmaps don't throw exceptions on allocation failure, they just become invalid. Almost nothing in MAME actually checks for this. emu/profiler.cpp: Abort if the profile stack overflows rather than throwing an exception. This is a developer feature and if it overflows, the code is broken. Calling a noreturn noexcept function generates less code than throwing an exception, which adds up. util/strformat.cpp: Traded away some unnecessary flexibility for more compact code. The stream objects must derive from std::basic_ostream now - they can't just be any old objects with the expected operators.
* Eliminate ARRAY_LENGTH template in favor of C++17's std::size AJR2021-02-141-16/+16
| | | | | | | | | | * osdcomm.h: Move definition of EQUIVALENT_ARRAY to coretmpl.h * sharc.cpp, gt64xxx.cpp, ym2413.cpp, gb_lcd.cpp, snes_ppu.cpp: Use STRUCT_MEMBER for save state registration * gio/newport.cpp, megadrive/svp.cpp, nes_ctrl/bcbattle.cpp, arm7.cpp, tms9995.cpp, pckeybrd.cpp, sa1110.cpp, sa1111.cpp, jangou_blitter.cpp, vic4567.cpp: Use std::fill(_n) instead of memset * emucore.h: Remove obsolete typedef
* cpu: Slightly reduce the number of page protection state changes Vas Crabb2021-01-061-1/+0
|
* cpu: Allow recompilers to work with W^X policy Vas Crabb2021-01-061-0/+2
|
* Fix non-x86 build and try to make sure it does not break silently again (#7041) Julian Sikorski2020-08-121-0/+2
| | | | | | * Do not build x64 DRC backend when C backend is forced * New CI target (mametiny + kinst) * Switch travis to CI target * Switch appveyor to CI target
* don't pass so many naked pointers around (nw) Vas Crabb2018-03-251-2/+2
|
* modernise drcuml somewhat (nw) Vas Crabb2018-03-241-127/+129
|
* dimemory: Lift the cap on the number of address spaces per device [O. Galibert] Olivier Galibert2017-07-031-3/+9
|
* converted lot of TRUE/FALSE to real boolean and updated types (nw) Miodrag Milanovic2016-10-221-4/+4
|
* NOTICE (TYPE NAME CONSOLIDATION) Miodrag Milanovic2016-10-221-44/+44
| | | | | Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8 also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
* use standard types uintptr_t, char16_t and char32_t instead of FPTR, ↵ Miodrag Milanovic2016-10-221-5/+5
| | | | utf16_char, unicode_char (nw)
* Fix x64 compile Vas Crabb2016-05-311-0/+8
|
* NULL->nullptr, instead of DEVCB_NULL use always DEVCB_NOOP to prevent ↵ Miodrag Milanovic2016-04-241-3/+3
| | | | confusion (nw)
* drcbex64: map F0-F3 to SSE registers (nw) Ville Linde2016-04-141-3/+0
|
* Revert software-installed slot/image options when changing software AJR2016-04-041-0/+1
| | | | | - Remove emu.h's stealth include of emuopts.h through mconfig.h; reduce dependency on emuopts.h in other headers and source files. - MCFG_CPU_FORCE_NO_DRC is now a CPU configuration parameter rather than a global one; it still works to override the -drc option setting.
* * Support *n conversion in stream_format/string_format Vas Crabb2016-03-011-25/+0
| | | | | | | | | * Make stream_format return characters printed * Add iostreams with std::vector storage * Move to type-safe templates for logerror and popmessage * Remove now-unnecessary I64FMT from calls to logerror/popmessage * Put some lib/util stuff in util:: namespace * Some fixes to Japanese translation
* Replace strformat, strprintf and strcatprintf with type-safe steam_format ↵ Vas Crabb2016-02-281-1/+1
| | | | | | | | | and string_format Update MAME to use new function Instantiate ODR-used static constant members Make some of the UI code more localisable Remove use of retired functions in tools
* Return std::string objects by value rather than pass by reference AJR2016-01-101-6/+3
| | | | | | - strprintf is unaltered, but strformat now takes one fewer argument - state_string_export still fills a buffer, but has been made const - get_default_card_software now takes no arguments but returns a string
* Cleanups and version bumpmame0169 Miodrag Milanovic2015-12-301-1/+1
|
* cleanup (nw) Miodrag Milanovic2015-12-261-1/+1
|
* fix exiting drivers with DRC cores (nw) Miodrag Milanovic2015-12-231-7/+5
|
* clang-modernize part 3 Miodrag Milanovic2015-12-041-17/+17
|
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-0/+1142