Sintendo
131163d33b
Jit64: boolX - Remove andcx immediate checks
...
All cases involving immediate values are now guaranteed to be handled
elsewhere, making these checks redundant.
2021-01-28 23:16:48 +01:00
Sintendo
845d7cd51f
Jit64: boolX - Optimize xor for size
...
XOR allows for a more compact representation for constants that can be
represented by a signed 8-bit integer, while MOV does not. By letting
MOV handle the larger constants we can occasionally save a byte.
Before:
44 89 F7 mov edi,r14d
81 F7 A0 52 57 01 xor edi,15752A0h
After:
BF A0 52 57 01 mov edi,15752A0h
41 33 FE xor edi,r14d
2021-01-28 23:16:48 +01:00
Sintendo
c3775588df
Jit64: boolX - Special case xor with 0xFFFFFFFF
...
Ever so slightly shorter.
When the condition register needs updating, we still prefer xor over
not+test.
Before:
45 8B F5 mov r14d,r13d
41 83 F6 FF xor r14d,0FFFFFFFFh
After:
45 8B F5 mov r14d,r13d
41 F7 D6 not r14d
2021-01-28 23:16:31 +01:00
Sintendo
c9011e9d2c
Jit64: boolX - Special case xor with 0
...
No computation necessary, but we may need a MOV.
Before:
8B FE mov edi,esi
83 F7 00 xor edi,0
After:
8B FE mov edi,esi
2021-01-28 23:09:14 +01:00
Sintendo
3677a5035c
Jit64: boolX - Precompute complement for eqvx
...
In the case of eqvx, the final complement can always be baked directly
into the immediate value.
Before:
45 8B EF mov r13d,r15d
41 F7 D5 not r13d
41 83 F5 04 xor r13d,4
After:
45 8B EF mov r13d,r15d
41 83 F5 FB xor r13d,0FFFFFFFBh
2021-01-28 23:06:00 +01:00
Sintendo
26f70657bc
Jit64: boolX - Precompute complement of b
...
PowerPC instructions andcx and orcx complement the value of register b
before performing their respective bitwise operation. If this register
happens to contain a known value, we can precompute the complement,
allowing us to generate simpler code.
- andcx
Before:
BF 00 01 00 00 mov edi,100h
F7 D7 not edi
41 23 FE and edi,r14d
After:
41 8B FE mov edi,r14d
81 E7 FF FE FF FF and edi,0FFFFFEFFh
- orc
Before:
41 BE 04 00 00 00 mov r14d,4
41 F7 D6 not r14d
45 0B F5 or r14d,r13d
After:
45 8B F5 mov r14d,r13d
41 83 CE FB or r14d,0FFFFFFFBh
2021-01-28 23:04:35 +01:00
Admiral H. Curtiss
dc2d234284
GCMemcardUtils: Fix typo in comment.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
e47eb16641
GCMemcardManager: Detect attempt to import multiple save files with the same internal name.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
74b56a8c7f
GCMemcardManager: Add filename column.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
9acbe1aced
GCMemcardManager: Make columns sortable.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
42f4ee629b
GCMemcardManager: Make columns resizable by the user.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
7cf991bd8a
GCMemcardManager: Small cleanups.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
e00e6e1a8c
GCMemcardManager: Replace remaining panic alert with ModalMessageBox.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
daa76183ed
GCMemcard: Let ImportFile() take a Savefile instead of a direntry and a vector of blocks.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
c95f3cbb61
GCMemcard: Remove obsolete methods.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
645cb2f3d1
GCMemcardDirectory: Rewrite migration logic without ExportGci().
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
e8b99d3afd
GCMemcardManager: Rewrite file deleting logic to provide a better user experience.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
6e96f95432
GCMemcardManager: Rewrite file copying logic to provide a better user experience.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
08dccb8727
GCMemcardManager: Rewrite file importing logic to provide a better user experience.
2021-01-28 22:01:33 +01:00
Admiral H. Curtiss
3286d2df3d
Common/VariantUtil: Add 'overloaded' helper struct for use with std::variant.
2021-01-28 22:01:32 +01:00
Admiral H. Curtiss
87ae7ccd75
GCMemcardManager: Rewrite file exporting logic to provide a better user experience.
2021-01-28 22:01:32 +01:00
Admiral H. Curtiss
7bb7aa16c2
GCMemcardManager: Relayout file table for a more compact design.
2021-01-28 22:01:32 +01:00
Admiral H. Curtiss
ec4fc7171f
GCMemcardUtils: Implement GenerateFilename() as a cleaner variant of GCMemcard::GCI_FileName().
2021-01-28 22:01:30 +01:00
Admiral H. Curtiss
3e7f537a9d
GCMemcard: Implement ExportFile() to get a file on a card with a single method call.
2021-01-28 22:00:33 +01:00
Admiral H. Curtiss
9b14cc8ea2
GCMemcard: Implement utility functions to read saves from and write saves to files, without involving a memory card.
2021-01-28 22:00:28 +01:00
Sepalani
b363962757
BreakpointWidget: Remove unnecessary code
...
PPCDebugInterface.Clear() is called by Core on shutdown instead
2021-01-28 21:23:18 +04:00
Sepalani
289637f92f
NetworkCaptureLogger: Move SSL logging
2021-01-28 21:23:18 +04:00
Léo Lam
c386c5acc2
Merge pull request #9366 from iwubcode/freelook_camera_quaternion
...
VideoCommon: allow Free Look to be manipulated by a quaternion
2021-01-28 01:34:09 +01:00
Léo Lam
9ca24ae8e0
Merge pull request #9092 from shuffle2/vshack
...
msbuild: Merge "Core" libs into single DolphinLib
2021-01-28 01:33:46 +01:00
iwubcode
586c689d63
VideoCommon: use Quaternion for Free Look orientation
2021-01-27 18:22:10 -06:00
iwubcode
d35287b6e4
Common: update Quaternion to allow rotating pitch, yaw, and roll all at once
2021-01-27 18:22:10 -06:00
iwubcode
544692f96a
Common: add convenience function to convert a Quaternion to a Matrix44
2021-01-27 18:22:10 -06:00
SirMangler
9f6d88880e
MemoryWidget: Add 'Offset' and General Improvements
2021-01-28 01:04:09 +01:00
Shawn Hoffman
500a694ca8
msbuild: bundle all dolphin "core" code into single library
2021-01-27 14:29:49 -08:00
Shawn Hoffman
5770ff01f3
rename D3DCommon/Common to D3DCommon/D3DCommon
2021-01-27 14:29:48 -08:00
Shawn Hoffman
527b5a9761
normalize common filenames in VideoBackends/D3D12
2021-01-27 14:29:48 -08:00
Shawn Hoffman
a0aeb5b0b9
normalize common filenames in VideoBackends/D3D
2021-01-27 14:29:48 -08:00
Shawn Hoffman
d7fd892fde
normalize common filenames in VideoBackends/Vulkan
2021-01-27 14:29:48 -08:00
Shawn Hoffman
ef70fe05bf
normalize common filenames in VideoBackends/Null
2021-01-27 14:29:48 -08:00
Shawn Hoffman
ff4f67492b
normalize common filenames in VideoBackends/OGL
2021-01-27 14:29:48 -08:00
Shawn Hoffman
3193f3d5c4
rename Core/IOS/FS/FileSystem.cpp to FileSystemCommon.cpp
2021-01-27 14:29:48 -08:00
Shawn Hoffman
7e1df34735
rename InputCommon/ControllerInterface/Device to CoreDevice
2021-01-27 14:29:48 -08:00
Shawn Hoffman
0be1491ef0
rename ciface::Wiimote to ciface::WiimoteController
2021-01-27 14:29:48 -08:00
Shawn Hoffman
84128d9532
rename Common/File to Common/IOFile
2021-01-27 14:29:48 -08:00
Shawn Hoffman
07fd02f207
rename Core/Analytics to Core/DolphinAnalytics
2021-01-27 14:29:47 -08:00
Léo Lam
96e3360f05
Merge pull request #9452 from JosJuice/android-wii-saves
...
Android: Add "Import Wii Save"
2021-01-27 23:00:47 +01:00
Markus Wick
7290cd0032
Merge pull request #9478 from JosJuice/double-assert-attempt-2
...
JitArm64: Fix false positive "turned singles into doubles" asserts
2021-01-27 20:20:59 +01:00
Markus Wick
b1fdd14ed1
Merge pull request #9314 from smurf3tte/dcbx
...
Jit: Fix correctness issue in dcbf/dcbi/dcbst
2021-01-27 20:12:21 +01:00
JosJuice
cd4ccda51c
Android: Add "Import Wii Save"
2021-01-27 20:10:06 +01:00
Markus Wick
2ada5b422d
Merge pull request #9448 from JosJuice/blr-x30
...
JitArm64: Avoid using X30 with BLR
2021-01-27 20:07:24 +01:00