Commit Graph

852 Commits

Author SHA1 Message Date
Gregory Hainaut 3d5c1b4ef8 Core|Common: restore old interlocked add/sub behavior
interlocked* returns the new value whereas fetch_add/sub returns the old value.
2016-02-29 21:43:56 +01:00
Gregory Hainaut e57a75ac55 Merge pull request #1202 from PCSX2/atomic-v2
Atomic v2
2016-02-28 22:08:29 +01:00
Gregory Hainaut 610bf8a277 Common: delete most of the deprecated atomic API 2016-02-28 15:29:31 +01:00
Gregory Hainaut 5ca92ecd67 Common: port code to std::atomic 2016-02-28 15:29:31 +01:00
Gregory Hainaut ca8955daf3 MTVU: port ScopedLockBool to std::atomic 2016-02-28 15:29:31 +01:00
Gregory Hainaut 60fe26ff2f common:threading: Port NonblockingMutex to std::atomic_flag 2016-02-28 15:29:00 +01:00
Gregory Hainaut 89fad4d3ad common: port ScopedPtrMT to std::atomic
v2: s/NULL/nullptr/
v3: tentative fix for MSVC
// ScopedPtrMT.h(91, 0): error C2593: 'operator ==' is ambiguous
2016-02-28 15:29:00 +01:00
Jonathan Li 2d4e2fb8cb windows: spu2-x does not use the emitter
So let's not specify it as a build dependency.

Also remove some unnecessary manual library linkage and remove the
wsWidgets GUI property sheet, which does nothing useful.
2016-02-28 11:08:08 +00:00
Jonathan Li bfeb3e801a gsnull: Remove GSsetWindowInfo
PCSX2 doesn't actually use it.

GSnull also seems a bit behind the current GS plugin API - perhaps it
should be removed.
2016-02-28 02:45:59 +00:00
Gregory Hainaut a66c911fed cmake: factorize debug/dev define 2016-02-21 16:17:10 +01:00
Pierre "Piorrro" GRASSER 30d1c0e0b5 Typo correction #2
I forgot to edit the other strings, last time.
2016-02-18 13:49:56 +01:00
Pierre "Piorrro" GRASSER d7b40433db Typo correction 2016-02-14 09:30:49 +01:00
Jonathan Li e92636ab1a utilities: Remove ScopedPtr and pxObjPtr implementation
Both are now unused.
2016-02-08 22:31:45 +00:00
Jonathan Li a74677acf7 utilities: Convert ScopedPtr to unique_ptr 2016-02-08 22:31:45 +00:00
Jonathan Li 92bb849e7c Use unique_ptr instead of ScopedPtr for exceptions 2016-02-08 22:31:45 +00:00
Jonathan Li 115b14bc94 cdvd: Replace ScopedPtr with unique_ptr 2016-02-08 22:31:45 +00:00
Gregory Hainaut 5611333c29 PCSX2: remove reporting of mmx/3dnow 2016-02-08 09:16:52 +01:00
Gregory Hainaut 5140a2e107 x86emitter: remove MMX support 2016-02-08 09:13:24 +01:00
Gregory Hainaut d59e4ca4d1 intrinsic: add rotate support for clang.... 2016-02-01 18:46:10 +01:00
Jonathan Li 04a8efd8c3 pcsx2|common: Use _WIN32 for Windows preprocessor macro
It's predefined, unlike WIN32 and _WINDOWS (and other variants), which
are defined in the property sheets.
2016-01-27 22:41:45 +00:00
Jonathan Li 50c7775e47 utilities: Use C99+ size definitions on Windows
Also remove a LONG definition for Linux - it's unused.
2016-01-27 22:41:45 +00:00
Gregory Hainaut 53e24a8e30 x86emitter: fix an useless gcc warning on int/uint cast 2016-01-27 10:27:34 +01:00
Gregory Hainaut 6dd83d3cba x86emitter: there are 16 int registers for all sizes. 2016-01-21 22:34:13 +01:00
Gregory Hainaut 9e773ff980 Merge pull request #1123 from PCSX2/emitter-Trex
Emitter trex
2016-01-21 22:32:37 +01:00
Gregory Hainaut a2a23579bd Merge pull request #1122 from PCSX2/emitter-64b
Emitter 64b
2016-01-21 22:31:01 +01:00
Gregory Hainaut 1a700145ec x86emitter: remove unused FPU opcode
Future code would rely on SSE anyway
2016-01-20 10:23:23 +01:00
Jonathan Li 3c7e45ccc8 utilities: Remove ScopedArray implementation
It's now unused.
2016-01-17 22:54:22 +00:00
Jonathan Li e8596f0430 pcsx2: Rearrange Console colour enum order
Preparation for next commit - The default isn't bold, so it's slightly
neater to have it at the start.
2016-01-17 22:06:32 +00:00
Gregory Hainaut 41a80fce20 x86emitter: finally support 64 bits instructions
Note: a couple of instructions don't support REX prefix. Some
exception ought to be implemented later
2016-01-17 17:02:38 +01:00
Gregory Hainaut 40438cf2bd x86emitter: port couple of simd instrusction to xOpWrite0F template 2016-01-17 16:59:44 +01:00
Gregory Hainaut 9ac22ee9aa x86emitter: rewrite remaining function to use generic template 2016-01-17 16:42:39 +01:00
Gregory Hainaut fc5e293ef6 x86emitter: rewrite move to use generic template 2016-01-17 13:44:29 +01:00
Gregory Hainaut 25cd35147e x86emitter: rewrite groups to use generic template 2016-01-17 12:34:44 +01:00
Gregory Hainaut a9864a5619 x86emitter: create xOpAccWrite handy template for special accumulator opcode 2016-01-17 12:34:28 +01:00
Gregory Hainaut d2436fa86d x86emitter: remove unused function 2016-01-17 12:07:41 +01:00
Gregory Hainaut 16057d8b04 x86emitter: inc/dec are illegal on x86_64 2016-01-17 12:07:03 +01:00
Gregory Hainaut f2ecfc99ad x86emitter: align EmitRex interface on EmitSibMagic 2016-01-17 12:06:08 +01:00
Gregory Hainaut e50e9a5e65 x86emitter: sed/32orLess/64orLess/ 2016-01-17 00:29:19 +01:00
Gregory Hainaut 395d43fd9c x86emitter: jump: use base type directly
which fix 16 bits call (no prefix)
2016-01-17 00:21:05 +01:00
Gregory Hainaut 968af6148e x86emitter: extend SSE instruction type 2016-01-17 00:21:05 +01:00
Gregory Hainaut 4bc9cbc24f x86emitter: extend lea/bswap 2016-01-17 00:21:05 +01:00
Gregory Hainaut eb4db2152c x86emitter: add x64 to push/pop 2016-01-17 00:21:05 +01:00
Gregory Hainaut ef21a8dbd0 x86emitter: extend group8 type 2016-01-17 00:21:05 +01:00
Gregory Hainaut 39a6bda52d x86emitter: extend test & bitscan type
Factorize the code to support any types
2016-01-17 00:21:05 +01:00
Gregory Hainaut e285036455 x86emitter: shift: extend it to 64 bits type 2016-01-17 00:21:05 +01:00
Gregory Hainaut fdaf0e9979 x86emitter:group: uses base type
Add 64 bits support for free ;)

Note: 64b still requires the REX prefix
2016-01-17 00:21:05 +01:00
Gregory Hainaut e2602b3967 x86emitter:move: factorize type and extend it to 64 bits
It's still missing the REX prefix support
2016-01-17 00:21:05 +01:00
Gregory Hainaut 41f509873d x86emitter: extend xIndirect32orLess to support 64 bits
It would be renamed later to avoid conflict with pending updates
2016-01-17 00:12:31 +01:00
Gregory Hainaut 39dc8368fa x86emitter: add GetPrefix16 helper 2016-01-17 00:12:21 +01:00
Gregory Hainaut be0b8cf2f5 x86emitter: implement some function to emit the REX prefix
Same fashion as EmitSibMagic
2016-01-17 00:10:21 +01:00