dolphin/Source/Core/Common
comex b84f6a55ab Automatically disable fastmem and enable memcheck when there are any watchpoints.
- Move JitState::memcheck to JitOptions because it's an option.
- Add JitOptions::fastmem; switch JIT code to checking that rather than
  bFastmem directly.
- Add JitBase::UpdateMemoryOptions(), which sets both two JIT options
  (replacing the duplicate lines in Jit64 and JitIL that set memcheck
  from bMMU).
  - (!) The ARM JITs both had some lines that checked js.memcheck
    despite it being uninitialized in their cases.  I've added
    UpdateMemoryOptions to both.  There is a chance this could make
    something slower compared to the old behavior if the uninitialized
    value happened to be nonzero... hdkr should check this.
- UpdateMemoryOptions forces jo.fastmem and jo.memcheck off and on,
  respectively, if there are any watchpoints set.
- Also call that function from ClearCache.
- Have MemChecks call ClearCache when the {first,last} watchpoint is
  {added,removed}.

Enabling jo.memcheck (bah, confusing names) is currently pointless
because hitting a watchpoint does not interrupt the basic block.  That
will change in the next commit.
2015-04-24 22:37:53 -04:00
..
Crypto Fix build failing when disabling precompiled headers. 2014-09-19 18:17:51 -04:00
Logging General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
Arm64Emitter.cpp [AArch64] Add an assert to SMOV in the emitter. 2015-03-08 12:29:45 -05:00
Arm64Emitter.h [AArch64] Stop violating the AAPCS64 so much. 2015-03-02 11:21:15 -06:00
ArmCommon.h Include a missing include in the ARM emitter's common code. 2014-09-10 20:39:19 -05:00
ArmCPUDetect.cpp Minor consistency changes 2015-01-12 15:18:18 -05:00
ArmEmitter.cpp Arm(64)Emitter: Make some variables static 2014-11-25 23:27:48 -05:00
ArmEmitter.h [ARM] Fix poison memory functions. 2015-02-13 12:16:05 -06:00
Atomic_GCC.h Common: Clean up brace placements 2014-08-30 18:06:35 -04:00
Atomic_Win32.h Clean up the intrinsics #ifdef mess 2015-02-24 01:02:36 +01:00
Atomic.h
BitField.h Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
BitSet.h JIT: optimize for the common case of unquantized psq_l/st 2015-01-10 14:14:43 -08:00
BreakPoints.cpp Automatically disable fastmem and enable memcheck when there are any watchpoints. 2015-04-24 22:37:53 -04:00
BreakPoints.h Automatically disable fastmem and enable memcheck when there are any watchpoints. 2015-04-24 22:37:53 -04:00
CDUtils.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
CDUtils.h
ChunkFile.h Made cycle count atomic to avoid using a mutex 2015-03-31 04:09:33 -04:00
CMakeLists.txt NetPlay: add a Common/ENetUtil namespace 2015-03-18 09:23:44 +01:00
CodeBlock.h
ColorUtil.cpp Fix build failing when disabling precompiled headers. 2014-09-19 18:17:51 -04:00
ColorUtil.h
Common.h Common: move _M_SSE macro to Intrinsics.h 2015-02-24 01:06:25 +01:00
Common.vcxproj NetPlay: add a Common/ENetUtil namespace 2015-03-18 09:23:44 +01:00
Common.vcxproj.filters NetPlay: add a Common/ENetUtil namespace 2015-03-18 09:23:44 +01:00
CommonFuncs.h Common: Remove TLS usage in GetLastErrorMsg 2015-04-07 22:42:21 +02:00
CommonPaths.h PostProcessing: Add support for user-supplied anaglyph shaders. 2015-01-25 22:07:03 +01:00
CommonTypes.h Minor consistency changes 2015-01-12 15:18:18 -05:00
CPUDetect.h JIT: more optimizing of float ops based on known input characteristics 2014-11-29 11:33:11 -08:00
DebugInterface.h Added a RAM Watch window to the debugger 2014-10-26 14:56:02 +11:00
ENetUtil.cpp NetPlay: Make the enet interrupts work 2015-03-18 10:16:11 +01:00
ENetUtil.h NetPlay: Make the enet interrupts work 2015-03-18 10:16:11 +01:00
Event.h Add Common::Event::WaitFor(), which has the same semantics as std::condition_variable::wait_for() (with millisecond units). 2014-08-17 21:52:40 -07:00
FifoQueue.h
FileSearch.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
FileSearch.h
FileUtil.cpp General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
FileUtil.h General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
FixedSizeQueue.h Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
Flag.h
FPURoundMode.h
GekkoDisassembler.cpp Remove remnants of old fake opcodes. 2015-03-14 16:59:12 -07:00
GekkoDisassembler.h Common: Introduce the new Gekko disassembler to Common. 2014-08-04 00:45:07 -04:00
GenericCPUDetect.cpp Fix warning in x64CPUDetect.cpp in generic build by not building it. 2014-09-25 18:48:00 -04:00
GenericFPURoundMode.cpp Update Outdated Google Code References 2014-12-20 21:17:51 -06:00
Hash.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
Hash.h Fix clang on x86_64. 2015-01-29 01:55:20 -06:00
IniFile.cpp DolphinWX/Common: Change some find_first_of usages to find 2015-03-24 08:32:44 -04:00
IniFile.h Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
Intrinsics.h Intrinsics: drop custom _mm_shuffle_epi8() 2015-02-24 19:37:16 +01:00
JitRegister.cpp Core: Change NULLs to nullptrs. 2015-03-14 20:20:41 -05:00
JitRegister.h JitRegister: overload Register with a [start,end) variant 2015-01-28 09:50:19 +01:00
LinearDiskCache.h Include CommonTypes.h instead of Common.h. 2014-09-08 15:39:58 -04:00
make_scmrev.h.js Windows: Also look for git.exe in the registry (for Git Extensions installs). 2014-07-20 12:33:56 -07:00
MathUtil.cpp VertexShaderManager: Compute stereoscopy projection matrices. 2014-11-23 14:23:41 +01:00
MathUtil.h Fix clamping for rectangles. 2015-03-04 17:15:29 -08:00
MemArena.cpp Make address translation respect the CPU translation mode. 2015-02-11 13:56:22 -08:00
MemArena.h Make address translation respect the CPU translation mode. 2015-02-11 13:56:22 -08:00
MemoryUtil.cpp Common: Remove TLS usage in GetLastErrorMsg 2015-04-07 22:42:21 +02:00
MemoryUtil.h Be pedantic about stack overflow on Linux and OS X. 2014-09-17 20:08:09 -04:00
Misc.cpp Common: Remove TLS usage in GetLastErrorMsg 2015-04-07 22:42:21 +02:00
MsgHandler.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
MsgHandler.h avoid the extern keyword in .cpp files 2014-07-11 16:10:20 +02:00
NandPaths.cpp Use emplace_* functions where in-place construction is preferable 2015-02-04 11:39:08 -05:00
NandPaths.h Common: Make TITLEID_SYSMENU a static const variable in NandPaths.h 2014-09-03 18:03:23 -04:00
Network.cpp
Network.h
PcapFile.cpp Common: Add a PCAP writer module 2014-06-22 20:04:46 +02:00
PcapFile.h Common: Add a PCAP writer module 2014-06-22 20:04:46 +02:00
PerformanceCounter.cpp Profiling: measure time on POSIX systems using clock_gettime 2014-11-03 00:07:12 +01:00
PerformanceCounter.h Profiling: measure time on POSIX systems using clock_gettime 2014-11-03 00:07:12 +01:00
Profiler.cpp Fix building with PCH disabled. 2014-12-03 22:01:12 -06:00
Profiler.h Common: Add a built-in profiler 2014-12-03 00:50:41 +01:00
SCMRevGen.vcxproj Windows: Give SCMRevGen a configuration for x64 instead of Win32. 2014-08-13 03:57:10 -07:00
SDCardUtil.cpp Common: Remove TLS usage in GetLastErrorMsg 2015-04-07 22:42:21 +02:00
SDCardUtil.h
SettingsHandler.cpp Common: Clean up brace placements 2014-08-30 18:06:35 -04:00
SettingsHandler.h
StdMakeUnique.h
StringUtil.cpp Core: Change NULLs to nullptrs. 2015-03-14 20:20:41 -05:00
StringUtil.h Use printf-like format in JitRegister::Register 2015-01-28 09:47:08 +01:00
SymbolDB.cpp Fix build failing when disabling precompiled headers. 2014-09-19 18:17:51 -04:00
SymbolDB.h Include CommonTypes.h instead of Common.h. 2014-09-08 15:39:58 -04:00
SysConf.cpp Include CommonTypes.h instead of Common.h. 2014-09-08 15:39:58 -04:00
SysConf.h
Thread.cpp JitRegister: fix VTune integration 2015-02-12 02:14:49 +01:00
Thread.h Minor consistency changes 2015-01-12 15:18:18 -05:00
Timer.cpp Use clock_gettime instead of gettimeofday, it's more effiency on low power system 2015-02-18 21:44:58 +01:00
Timer.h Common: Add a built-in profiler 2014-12-03 00:50:41 +01:00
TraversalClient.cpp Traversal: Use a decent PRNG instead of rand() 2015-03-18 10:16:11 +01:00
TraversalClient.h Traversal: Use a decent PRNG instead of rand() 2015-03-18 10:16:11 +01:00
TraversalProto.h Added Gui elements in Netplay Setup Diag so a person can choose a traversal server 2015-02-25 18:28:26 -08:00
TraversalServer.cpp Fix printf width in TraversalServer. 2015-04-13 02:26:52 -04:00
Version.cpp Add missing includes where headers depend on other headers having been included first. 2014-10-21 21:22:16 -04:00
x64ABI.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
x64ABI.h Convert registersInUse to BitSet. 2014-10-25 16:57:25 -04:00
x64Analyzer.cpp JIT: Reuse trampolines when possible 2014-10-05 15:03:11 +11:00
x64Analyzer.h Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
x64CPUDetect.cpp Formatting/Whitespace Cleanup 2015-02-25 10:48:21 -05:00
x64Emitter.cpp Merge pull request #2088 from Sintendo/diecmp 2015-04-23 16:34:23 -04:00
x64Emitter.h Merge pull request #2088 from Sintendo/diecmp 2015-04-23 16:34:23 -04:00
x64FPURoundMode.cpp x64FPURoundMode: Make a look-up table static 2015-03-19 09:07:36 -04:00
XSaveWorkaround.cpp Windows: Improve XSaveWorkaround to behave correctly when XSAVE processor feature is enabled, but AVX support isn't available for whatever reason. 2014-08-10 14:50:29 -07:00