Commit Graph

20989 Commits

Author SHA1 Message Date
hthh
d841d9c7b3 JitArm64: Check the FIFO on EIEIO instructions
Copied from the Jit64 version
2016-08-12 21:09:15 +10:00
hthh
bbc0f0c744 Jit: Check the FIFO on EIEIO instructions
The gather pipe optimization postpones checking the FIFO until the end
of the current block (or 32 bytes have been written). This is usually
safe, but is not correct across EIEIO instructions.

This is inferred from a block in NBA2K11 which synchronizes the FIFO
by writing a byte to it, executing eieio, and checking if PI_FIFO_WPTR
has changed. This is not currently an issue, but will become an issue
if the gather pipe optimization is applied to more stores.
2016-08-12 21:03:41 +10:00
aldelaro5
5358e898c6 Fix the breakpoint list not updating after adding a memory check via the memory view.
Add the CCodeWindow to the constructor of the memoryWindow so it can call the notify update of the breakpoint list.

Add the case of breakpoint update when receiving an event (the update command was issued, but wasn't managed before).

Run clang format and renamed the code window names.
2016-08-11 15:38:17 -04:00
Pierre Bourdon
4c9c456846 Merge pull request #4116 from leoetlino/lint-real-fix
Tools: Fix the lint script (for real, this time -- and the last time)
2016-08-11 21:27:16 +02:00
Léo Lam
c1184957a5 Run clang-format on missed files
`clang-format`s files that lint missed because of the bug. Fortunately,
not much.
2016-08-11 21:14:39 +02:00
Léo Lam
1fe31f6f19 Tools: Fix the lint script
It turns out that last fix was only partial, and it didn't fix the
issue completely as paths were fixed, but staged changes were not
in the list. This should fix it for real, this time. Sorry about that…

(git diff needs --cached to include staged changes, unlike git status.)
2016-08-11 21:11:17 +02:00
Pierre Bourdon
cef71afc27 Merge pull request #3987 from JosJuice/scheduleevent-cleanup
CoreTiming: ScheduleEvent cleanup
2016-08-11 16:18:14 +02:00
Pierre Bourdon
c6fed0565d Merge pull request #4109 from JosJuice/remove-am-baseboard
Remove AM Baseboard
2016-08-11 16:16:23 +02:00
Pierre Bourdon
5eab50d52c Merge pull request #4113 from stenzek/externals-vulkan
Externals: Add Vulkan headers and glslang
2016-08-11 16:15:32 +02:00
Stenzek
951fc44d86 Externals: Add glslang from Vulkan SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
Stenzek
49e57df2b6 Externals: Add Vulkan headers from SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
JosJuice
3bb0e7e3f5 Remove AM Baseboard
Let's stop pretending that we support Triforce emulation.
Keeping this code around just in case someone will make
major improvements in the future isn't really worth it.

I'm keeping the Triforce game INIs so users will know that
the compatibility rating for Triforce games is 1 star (broken).
2016-08-11 12:53:44 +02:00
JosJuice
3443a10030 CoreTiming: Merge ScheduleEvent variants into one function
Now Core::IsCPUThread() only gets called once when using the AnyThread
variant. Also, I think the enum approach makes calling code clearer.
2016-08-11 12:45:57 +02:00
Markus Wick
5697032ec7 Merge pull request #4103 from degasus/dynamic-bat
JitArm64: Fix two issues.
2016-08-11 12:42:02 +02:00
Scott Mansell
088f7eaa3d Merge pull request #4110 from JosJuice/fix-exi-translations
Fix choosing certain localized EXI devices
2016-08-11 12:39:36 +12:00
Scott Mansell
e577ffaee5 Merge pull request #4107 from JosJuice/no-immediate-scheduleevent
Remove Immediate variants of ScheduleEvent
2016-08-11 12:13:49 +12:00
JosJuice
c9fa6318a2 Fix choosing certain localized EXI devices 2016-08-10 20:04:33 +02:00
Mat M
8552ff5789 Merge pull request #4106 from RisingFog/dtm_gc_language
Add Gamecube Language to DTM Header
2016-08-10 12:16:20 -04:00
Markus Wick
7914e4d19d Merge pull request #3458 from JosJuice/seconds-not-ticks
Replace some unnamed tick constants with GetTicksPerSecond()
2016-08-10 17:43:51 +02:00
JosJuice
b8e04c9513 Replace some unnamed tick constants with GetTicksPerSecond()
These operations should always take the same amount of time,
not the same amount of ticks. The number of ticks per second
is different for GameCube and Wii.
2016-08-10 17:34:23 +02:00
JosJuice
47c8bb26f8 Remove Immediate variants of ScheduleEvent
Usage of these are replaced with regular equivalents in order
to avoid executing event handlers in the middle of JIT blocks.
2016-08-10 16:34:06 +02:00
Markus Wick
caa7ff7c25 Merge pull request #4093 from leoetlino/flags-and-events
Use Common::Flag and Common::Event when possible
2016-08-10 16:15:52 +02:00
Léo Lam
dca22e08eb Use Common::Flag and Common::Event when possible
Replaces old and simple usages of std::atomic<bool> with Common::Flag
(which was introduced after the initial usage), so it's clear that
the variable is a flag and because Common::Flag is well tested.

This also replaces the ready logic in WiimoteReal with Common::Event
since it was basically just unnecessarily reimplementing Common::Event.
2016-08-10 16:08:15 +02:00
Markus Wick
c6a0e543a5 Merge pull request #3861 from stenzek/d3d11-mip-dumping
D3D11: Support texture dumping of non-zero mipmap levels
2016-08-10 15:50:48 +02:00
Stenzek
bce8097712 D3D11: Support texture dumping of non-zero mipmap levels 2016-08-10 23:45:25 +10:00
Markus Wick
cb2b110d42 Merge pull request #4097 from lioncash/sysconf
SysConf: Minor simplifications to initial generating
2016-08-10 14:41:35 +02:00
Markus Wick
b075d18d2e Merge pull request #4096 from lioncash/codeblock-init
CodeBlock: In-class initialize variables
2016-08-10 14:39:51 +02:00
Markus Wick
0fecd2f6b0 Merge pull request #4104 from degasus/master
PixelEngine: Cleanup PE Token.
2016-08-10 13:36:34 +02:00
degasus
82bdc4ef86 PixelEngine: Delay token updates by events.
To still get a speedup, mark if already an event is queued.
If so, don't raise a new event.
2016-08-10 13:24:57 +02:00
degasus
a051db9792 PixelEngine: Cleanup PE Token.
This also affects the behavior a bit, it should now fit better to the one of the commonly more used PE Finish flag.
2016-08-10 10:07:53 +02:00
degasus
367e1b4d4c PixelEngine: Drop write-only variables. 2016-08-10 10:07:53 +02:00
Chris Burgener
84731456fa Add Gamecube Language to DTM Header 2016-08-09 23:02:31 -04:00
Markus Wick
7e3c04f069 Merge pull request #4076 from RisingFog/fix_sram_rtc_offset
Fix improper SRAM RTC offset
2016-08-08 23:10:33 +02:00
degasus
447b23e09a JitArm64: Load memory base based on MSR.DR. 2016-08-08 20:19:57 +02:00
degasus
77cfd0d4fd JitArm64: Fix rfi 2016-08-08 20:19:57 +02:00
Scott Mansell
d56ae505dd Merge pull request #4101 from meffij/SIDevicesEnumFix
clean up bounds checking for SIDEVICE_ENUM
2016-08-09 06:09:52 +12:00
Calvin Cochran
ba45a5999f clean up bounds checking for SIDEVICE_ENUM 2016-08-08 12:33:08 -05:00
Lioncash
fbc0aaf796 MemoryUtil: Remove unimplemented/unused functions
GuardMemoryMake/GuardMemoryUnmake are unimplemented prototypes.
GetPageSize is an unused function.
2016-08-07 13:04:05 -04:00
Lioncash
e01c143379 Common: namespace MemoryUtil 2016-08-07 13:03:07 -04:00
Matthew Parlane
1ab99ee22c Merge pull request #4098 from rohit-n/build-pch
Fix building with PCH disabled.
2016-08-07 18:59:27 +12:00
Rohit Nirmal
cbec38e775 Fix building with PCH disabled. 2016-08-07 01:18:59 -05:00
Markus Wick
10a81bf096 Merge pull request #4095 from degasus/dynamic-bat
JitCache: Support for VMEM + MSR bits
2016-08-07 01:48:02 +02:00
Lioncash
08bc19bf51 SysConf: Use range-based for loops in sysconf generation
Same thing, nicer looking
2016-08-06 16:22:42 -04:00
Lioncash
58b871e05c SysConf: Simplify entry generation
Just use a vector and move it instead of manually pushing them one-by-one.
2016-08-06 16:10:48 -04:00
Lioncash
18210a65ce CodeBlock: In-class initialize variables 2016-08-06 13:20:38 -04:00
degasus
85affe995e JitCache: Do not use block 0.
This ID is reserved for invalid blocks. So this block can't be invalidated.
2016-08-06 14:16:13 +02:00
degasus
814f29b25b JitCache: Implement block unlinking. 2016-08-06 11:41:39 +02:00
magumagu
ba39a0b3b4 Add ISI logging to interpreter. 2016-08-06 11:41:39 +02:00
magumagu
ca511640a5 Add support for DSI exceptions to CachedInterpreter.
Should be straightforward.  Maybe useful for the purpose of testing.
2016-08-06 11:41:39 +02:00
magumagu
758e6406cd JIT: fix handling of PC in dispatcher/block cache.
Specifically, don't make any assumptions about what effective addresses
are used for code, and correctly handle changes to MSR.DR/MSR.IR.

(Split off from dynamic-bat.)
2016-08-06 11:41:39 +02:00