mirror of
https://github.com/PCSX2/pcsx2.git
synced 2026-11-13 01:30:29 +01:00
Bugfix for assertion breaks not working in Devbuilds.
newVif: * Bugfix to HashBucket::find() cuts microprogram caches misses in half. * Dynarec version now uses alternating XMM registers for unmasked unpacks (very minor speedup, ~1%). git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2397 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
1 parent
9473e69b7f
commit
de637fc921
7 files changed
+141
-101
No files matched your search
@@ -76,6 +76,26 @@ bool pxAssertImpl_LogIt( const DiagnosticOrigin& origin, const wxChar *msg )
|
||||
return false;
|
||||
}
|
||||
|
||||
// Because wxTrap isn't available on Linux builds of wxWidgets (non-Debug, typically)
|
||||
void pxTrap()
|
||||
{
|
||||
#if defined(__WXMSW__) && !defined(__WXMICROWIN__)
|
||||
__debugbreak();
|
||||
#elif defined(__WXMAC__) && !defined(__DARWIN__)
|
||||
#if __powerc
|
||||
Debugger();
|
||||
#else
|
||||
SysBreak();
|
||||
#endif
|
||||
#elif defined(_MSL_USING_MW_C_HEADERS) && _MSL_USING_MW_C_HEADERS
|
||||
Debugger();
|
||||
#elif defined(__UNIX__)
|
||||
raise(SIGTRAP);
|
||||
#else
|
||||
// TODO
|
||||
#endif // Win/Unix
|
||||
}
|
||||
|
||||
DEVASSERT_INLINE void pxOnAssert( const DiagnosticOrigin& origin, const wxChar* msg )
|
||||
{
|
||||
RecursionGuard guard( s_assert_guard );
|
||||
@@ -98,7 +118,7 @@ DEVASSERT_INLINE void pxOnAssert( const DiagnosticOrigin& origin, const wxChar*
|
||||
trapit = pxDoAssert( origin, msg );
|
||||
}
|
||||
|
||||
if( trapit ) { wxTrap(); }
|
||||
if( trapit ) { pxTrap(); }
|
||||
}
|
||||
|
||||
__forceinline void pxOnAssert( const DiagnosticOrigin& origin, const char* msg)
|
||||
|
||||
Reference in new issue
Block a user