Stevoisiak
93b16a4a2d
Formatting/Whitespace Cleanup
...
Various fixes to formatting and whitespace
2015-02-25 10:48:21 -05:00
Tillmann Karras
f298f00e1b
Clean up the intrinsics #ifdef mess
2015-02-24 01:02:36 +01:00
Ryan Houdek
7a61bd5519
Merge pull request #2107 from Sonicadvance1/aarch64_fix_lha
...
[AArch64] Fix fastmem lha/lhax.
2015-02-23 15:08:42 -06:00
magumagu
b9157c5a36
Merge pull request #2090 from magumagu/jit-gatherpipe-address
...
Refactor gather-pipe address checking.
2015-02-23 12:46:04 -08:00
Lioncash
6fe59d82e1
Interpreter: Fix Helper_UpdateCR1
...
This previously shifted off-by-one
2015-02-23 06:56:01 -05:00
Ryan Houdek
859eeb6d5b
[AArch64] Fix fastmem lha/lhax.
...
When the fastmem loadstore would fail, we would disassemble a few instructions to determine if lhbrx or lhz*
This was failing since I was checking the REV16 instruction that appears after the LDRH. Fixed it to make sure it was checking the correct instruction
which is SXTH.
Fixes an issue where homebrew wouldn't load with fastmem enabled.
2015-02-22 22:58:10 -06:00
Lioncash
1a913138d5
Interpreter: Uncomment code related to cmp and cmpl
...
This is actually correct. Also cmpli has this uncommented as well.
2015-02-22 19:07:09 -05:00
magumagu
917a900ccb
Refactor gather-pipe address checking.
...
The implementation of IsOptimizableGatherPipeWrite is extremely simple
now, but it will get a bit more complicated with dynamic-bat.
2015-02-22 11:01:42 -08:00
magumagu
18ada7a0f5
Merge pull request #2033 from magumagu/mmio-fix-addresses
...
Fix the addresses of MMIO registers.
2015-02-22 10:58:25 -08:00
Fiora
c54a8c54fb
Merge pull request #1994 from Tilka/vtune
...
JitRegister: fix VTune integration
2015-02-22 07:58:12 -08:00
Lioncash
bfa5dcc891
Interpreter: Set the FPCC bits correctly for ordered/unordered FP compares
...
Setting the whole FPRF is slightly incorrect, this should only modify the FPCC bits; the class bit should be preserved.
2015-02-22 02:19:13 -05:00
Lioncash
09319a1e11
Interpreter: Rearrange ordered/unordered compares
...
Comparing floating point numbers with == can trigger warnings (and have static analysis tools complain). So we make it the else case.
This also more closely resembles the Gekko manual.
2015-02-21 22:26:23 -05:00
magumagu
9e29154b08
Merge pull request #1988 from magumagu/fast-checkgatherpipe
...
Use faster CheckGatherPipe from JIT.
2015-02-21 15:07:59 -08:00
magumagu
018a7f1ec9
Fix registersInUse in Jit64::lmw.
...
Doesn't fix any known issue at the moment, but I ran into this bug with
dynamic-bat.
2015-02-21 09:31:20 -08:00
magumagu
0360e01eaf
Merge pull request #2040 from magumagu/gc-memmap
...
Try to fix our memory map to match the GameCube.
2015-02-19 15:44:36 -08:00
magumagu
314b241220
Try to fix our memory map to match the GameCube.
...
This basically just restores the RAM mirroring that existed before PR1856
(address translation).
2015-02-19 15:02:51 -08:00
Pierre Bourdon
fbbbad98e9
Merge pull request #2079 from lioncash/tables
...
PowerPC: Minor cleanups.
2015-02-19 22:51:34 +01:00
magumagu
d0c675af83
Merge pull request #2080 from lioncash/interp
...
Interpreter: Remove unnecessary prototypes and includes
2015-02-19 11:19:20 -08:00
Lioncash
8401b5a1f2
Interpreter: Remove unnecessary prototypes and includes
2015-02-19 13:20:24 -05:00
Lioncash
a60d3306b1
PowerPC: Get rid of magic numbers related to interp/JIT initialization.
2015-02-19 12:16:53 -05:00
Lioncash
d32359c915
PPCTables: Simplify UsesFPU
...
We can just retrieve the op info and check if the FPU flag is present
2015-02-19 12:16:44 -05:00
Pierre Bourdon
6a14300c9c
Merge pull request #2078 from lioncash/fwd
...
PPCTables: Remove an unnecessary forward declaration
2015-02-19 15:51:15 +01:00
Lioncash
e4df6026c4
PPCTables: Remove an unnecessary forward declaration
...
This class name isn't used anymore.
2015-02-19 09:08:00 -05:00
Lioncash
0fc3166b2f
PPCTables: Correct some flag descriptions
2015-02-19 08:56:18 -05:00
Ryan Houdek
19f8524304
Fix mulli's flags in the instruction tables.
...
It doesn't set RC, so this flag is incorrect.
2015-02-18 16:26:12 -06:00
Ryan Houdek
ef2fba2e85
Merge pull request #2070 from lioncash/unused
...
PowerPC: Remove unused enum values
2015-02-17 23:42:46 -06:00
Lioncash
78d917b0b3
PowerPC: Remove unused enum values
2015-02-18 00:37:32 -05:00
Lioncash
0b3a2ae4ca
PowerPC: Document the instruction table flags
...
Should make it easier for newcomers to get up to speed.
2015-02-18 00:17:51 -05:00
Ryan Houdek
127e742992
Merge pull request #2046 from Mullin/Fix-unsigned/signed-stores
...
[ARMv7] Fix unsigned/signed stores
2015-02-17 14:38:36 -06:00
Mullin
39aa2432a6
Fix signed/unsigned stores
2015-02-17 21:29:01 +01:00
Fiora
53bf21e15a
Merge pull request #2066 from lpereira/regcache-with-variadic-tpl
...
Jit64: Use variadic templates for RegCache locking
2015-02-17 08:53:07 -08:00
Leandro Pereira
1162c5344b
Jit64: Use variadic templates for RegCache locking
2015-02-17 10:01:42 -02:00
Ryan Houdek
3aa605236d
Merge pull request #2041 from Sonicadvance1/AArch64_vertex_loader
...
[AArch64] Vertex loader and things
2015-02-17 00:51:51 -06:00
magumagu
77a0bfdd8f
Merge pull request #2055 from magumagu/fakevmem-code
...
Allow executing code out of FakeVMEM.
2015-02-16 19:13:14 -08:00
Ryan Houdek
f54a0d3ff4
[AArch64] Minor floating point loadstore improvements.
...
These use the Vector x Element FMUL instruction to improve speeds slightly.
Should give ~3cycle improvement per quantized loadstore done.
2015-02-16 16:51:39 -06:00
magumagu
f316265973
Fix the addresses of MMIO registers.
...
MMIO registers are located at 0x0C000000 and 0x0D000000, not 0xCC000000.
The 0xCC000000 addresses are just an artifact of address translation.
2015-02-15 18:29:37 -08:00
magumagu
5b6a947e8f
Merge pull request #2035 from magumagu/remove-bat-option
...
Remove the BAT checkbox/setting/implementation.
2015-02-15 17:27:18 -08:00
skidau
72e8e78ec8
Merge pull request #2037 from magumagu/illegal-inst-handling
...
Improve illegal instruction handling.
2015-02-15 12:34:08 +11:00
magumagu
001bf9152e
Allow executing code out of FakeVMEM.
...
Fixes regression from PR1856 (address translation).
2015-02-14 14:08:46 -08:00
Ryan Houdek
b989c2fd8f
[AArch64] Fix another assert in the JIT register cache.
2015-02-13 12:16:06 -06:00
Tillmann Karras
d33e760c55
Jit64: turn short jmp into near jmp
...
Fixes a regression from #1856 's ac54c6a .
2015-02-13 07:51:34 +01:00
magumagu
985087c7e2
Make all unknown opcodes behave consistently.
...
Consistently fall back to the interpreter for unknown instructions, and
make sure GetOpInfo() always returns a non-null pointer.
2015-02-11 22:18:33 -08:00
magumagu
e640ef9d7b
Improve illegal instruction handling.
...
This should more reliably show an error message for illegal
instructions.
2015-02-11 21:01:00 -08:00
magumagu
aa40f750d4
Remove the BAT checkbox/setting/implementation.
...
The current version of the setting is useless, and the real implementation
(PR1882) will be always-on, and won't use any of the existing code.
2015-02-11 20:24:51 -08:00
Tillmann Karras
0ec48e0ec9
JitRegister: fix VTune integration
2015-02-12 02:14:49 +01:00
magumagu
aaee23d1b4
Fix ARM64 build for address translation changes.
2015-02-11 13:56:38 -08:00
magumagu
e136c8a066
PowerPC: misc cleanup.
2015-02-11 13:56:36 -08:00
magumagu
ac54c6a4e2
Make address translation respect the CPU translation mode.
...
The PowerPC CPU has bits in MSR (DR and IR) which control whether
addresses are translated. We should respect these instead of mixing
physical addresses and translated addresses into the same address space.
This is mostly mass-renaming calls to memory accesses APIs from places
which expect address translation to use a different version from those
which do not expect address translation.
This does very little on its own, but it's the first step to a correct BAT
implementation.
2015-02-11 13:56:22 -08:00
magumagu
d9988ee9b5
Merge pull request #1987 from magumagu/thread-safety
...
Cleanup usage of atomic/threadsafe functions
2015-02-10 13:48:12 -08:00
magumagu
0f96a0104e
Merge pull request #1752 from Buddybenj/clean-up
...
Clean Up
2015-02-10 11:39:14 -08:00