Lioncash
75f5fcdfee
Assert: Remove unused parameter from DEBUG_ASSERT
...
This brings the macro in line with the regular ASSERT macro, which only has one
macro parameter.
2018-03-16 13:01:11 -04:00
Mat M
328585ef17
Merge pull request #6445 from lioncash/assert-guard
...
Assert: Wrap assertion macro bodies in do {} while (0)
2018-03-16 12:42:56 -04:00
Lioncash
f44e2dc425
Assert: Wrap assertion macro bodies in do {} while (0)
...
Enforces the termination of the macro with a semicolon. Aside from that
requirement, behavior remains the same.
2018-03-16 12:35:23 -04:00
Mat M
9f4d5122a2
Merge pull request #6438 from lioncash/assert
...
Assert: Uppercase assertion macros
2018-03-16 11:59:14 -04:00
Stenzek
1259370cdf
Merge pull request #6439 from JosJuice/android-ubershader-config
...
Bring the Android GUI setting for ubershaders up to date
2018-03-16 23:19:13 +10:00
Anthony
d3dd85dbd7
Merge pull request #6440 from spycrab/remove_skip_dcbz
...
Properties/GameConfig: Remove "Skip DCBZ"
2018-03-15 12:40:11 -07:00
spycrab
a2d6bab0d2
Properties/GameConfig: Remove "Skip DCBZ"
2018-03-15 20:33:01 +01:00
Anthony
1c3cc26d19
Merge pull request #6386 from spycrab/qt_dbg_code
...
Qt/Debugger: Implement "Code" widget
2018-03-15 11:35:26 -07:00
JosJuice
828c2c44ca
Bring the Android GUI setting for ubershaders up to date
...
9fa2470 changed how the ubershader setting is stored in INIs but didn't
update the Android GUI code to reflect that, so the setting in the
Android GUI has been broken starting with that commit.
Fixes https://bugs.dolphin-emu.org/issues/10947
2018-03-15 19:15:13 +01:00
Lioncash
50a476c371
Assert: Uppercase assertion macros
...
Macros should be all upper-cased. This is also kind of a wart that's
been sticking out for quite a while now (we avoid prefixing
underscores).
2018-03-14 22:03:12 -04:00
Markus Wick
19d97f3fd9
Merge pull request #6430 from stenzek/uid-cache-fixes
...
ShaderCache: Fix several issues in background shader compiling
2018-03-14 17:08:36 +01:00
Stenzek
517a977444
ShaderCache: Fix several issues in background shader compiling
...
- In D3D, shaders could be compiled on the main thread, blocking
startup.
- Reduced the latency between a pipeline being requested and used in all
backends in hybrid ubershader mode, when no shader stages were present.
- Fixed a case where async compilation could cause the same UID to be
appended multiple times to the UID cache.
- Fix incorrect number of threads being used when immediately compile
shaders was enabled.
2018-03-15 01:50:47 +10:00
Stenzek
b3f948891a
Merge pull request #6437 from stenzek/gl-element-buffer-binding
...
OGL: Ensure VAO is active before unmapping buffers
2018-03-15 00:47:50 +10:00
Stenzek
dc9012ae08
OGL: Ensure VAO is active before unmapping buffers
...
Fixes a crash which could occur in platforms which do not support
buffer_storage, and EFB2RAM is enabled (which indirectly uses the
attributeless buffer).
2018-03-15 00:32:39 +10:00
Léo Lam
6813c5e1e9
Merge pull request #6434 from lioncash/x86-dsp
...
DSPCore: Move x64 JIT source files into an x64 subdirectory
2018-03-14 10:54:46 +01:00
Markus Wick
b6ef0691e7
Merge pull request #6435 from stenzek/mali-primitive-restart
...
DriverDetails: Disable primitive restart on Vulkan with Mali driver
2018-03-14 09:43:36 +01:00
Lioncash
9f2a46b08d
DSPCore: Use nested namespace specifiers for the x64 JIT
...
Slims down the amount of lines needed for namespacing.
2018-03-13 18:57:25 -04:00
Lioncash
b3fd79b45a
DSPCore: Rename namespace to match moved x64 JIT files
...
Maintains consistency between location and code
2018-03-13 18:48:16 -04:00
Lioncash
ab5b90bf15
DSPCore: Move x64 JIT source files into an x64 subdirectory
...
While the code is namespaced out properly, the files weren't separated
into their own directory. This moves the files so that introducing a general
interface is easier in the future for supporting other architectures.
2018-03-13 18:26:26 -04:00
Stenzek
51e4014a35
DriverDetails: Disable primitive restart on Vulkan with Mali driver
2018-03-14 02:56:24 +10:00
Stenzek
db810956ec
Vulkan: Provide a more accurate method of detecting drivers/vendors
...
This is needed to differentiate between the open-source Mesa drivers and
their binary counterparts for Intel and AMD.
2018-03-14 02:48:53 +10:00
Markus Wick
f7ff634e4f
Merge pull request #6432 from degasus/OGL-OSD-update
...
OGL: Scale OSD text on big screens.
2018-03-13 16:37:58 +01:00
Pierre Bourdon
8a2cc14656
Merge pull request #6433 from hrydgard/optimize-uninitialize-xfb-memory
...
SSE-optimize UninitializeXFBMemory
2018-03-13 12:42:24 +01:00
Henrik Rydgård
6cbb716f60
SSE-optimize UninitializeXFBMemory
...
Lowest hanging fruit I could find with a profiler.
Not sure this stuff actually needs to be done, but assuming it is, why
not do it quickly? 10x faster, goes from 1% CPU to 0.09%.
2018-03-13 11:55:28 +01:00
degasus
a5c0739fab
OGL: Scale OSD text on big screens.
2018-03-12 20:38:06 +01:00
degasus
d4449971c9
OGL: Warn if buffer_storage isn't available.
...
Yes, this commit is only to blame OSX and Mali. Through the former supports unsynchronized mappings, the latter supports *no* way to stream dynamic data at all. Let's try to make bad news, as they ignore friendly feature requests. Maybe we just need to make more noise...
2018-03-12 20:38:00 +01:00
Léo Lam
90ca62e416
Merge pull request #6428 from JosJuice/qt-zh-order
...
Qt2 translation: Don't place "zh_CN" and "zh_TW" after "zh"
2018-03-12 18:44:41 +01:00
JosJuice
4b85f7fe79
Qt2 translation: Don't place "zh_CN" and "zh_TW" after "zh"
...
The least specific language code should be tried last.
2018-03-11 22:27:17 +01:00
Pierre Bourdon
d3ef7f0bd5
Merge pull request #6431 from stenzek/uid-cache-version
...
ShaderCache: Decouple shader UID cache from git commit
2018-03-11 08:38:58 +01:00
Stenzek
427aa188d4
ShaderCache: Use a version number for pipeline UID caches
2018-03-11 14:48:09 +10:00
Léo Lam
63d5e57337
Merge pull request #6419 from Ebola16/Fix_OpenAL
...
Change FATAL_ERROR to STATUS message for OpenAL not found in externals
2018-03-10 13:35:30 +01:00
Pierre Bourdon
d72947d638
Merge pull request #6427 from JosJuice/thousandseparate-encoding
...
StringUtil: Fix Windows encoding in ThousandSeparate
2018-03-10 13:16:00 +01:00
JosJuice
34be8488a5
StringUtil: Fix Windows encoding in ThousandSeparate
...
Some locales use non-breaking spaces as separators, so getting the
encoding right is important. If DolphinWX gets a string that isn't
valid UTF-8, it flat out won't display the string.
2018-03-10 12:13:30 +01:00
Pierre Bourdon
a4ef133456
Merge pull request #6399 from stenzek/videocommon-shader-cache
...
VideoCommon Shader (Pipeline) Cache
2018-03-10 08:22:28 +01:00
Stenzek
93ab50c555
OGL: Move primitive restart enable logic to GLUtil
2018-03-10 16:11:20 +10:00
Stenzek
51a586d11a
GLUtil: Encapsulate functions in a namespace
2018-03-10 16:11:19 +10:00
Stenzek
e31cc1f679
ShaderCache: Implement background shader compilation
...
This enables shaders to be compiled while the game is starting, instead
of blocking startup. If a shader is needed before it is compiled,
emulation will block.
2018-03-10 16:11:19 +10:00
Stenzek
9fa24700b6
VideoConfig: Collapse ubershader configuration fields to a single value
2018-03-10 15:56:45 +10:00
Stenzek
590307b94c
ShaderCache: Use memcmp for comparing pipeline UIDs
...
As these are stored in a map, operator< will become a hot function when
doing lookups, which happen every frame. std::tie generated a rather
large function here with quite a few branches.
2018-03-10 15:56:42 +10:00
Stenzek
41296db083
Renderer: Remove now-redundant Set{Rasterization,Depth,Blending}State
2018-03-10 15:56:40 +10:00
Stenzek
fc1fe0672b
OGL: Add some basic state tracking
...
We would want to improve the granularity here in the future, but for
now, this should avoid any performance loss from switching to the
VideoCommon shader cache.
2018-03-10 15:56:37 +10:00
Stenzek
f9c829c7f7
OGL: Re-implement async shader compiling
2018-03-10 15:56:34 +10:00
Stenzek
dec0c3bce8
Move shader caches to VideoCommon
2018-03-10 15:56:30 +10:00
Stenzek
24df896eb8
VKShader: Fix incorrect loading of binary shaders
2018-03-10 15:56:27 +10:00
Stenzek
1ddc4c5568
D3D: Make NativeVertexFormat thread safe
2018-03-10 15:56:24 +10:00
Stenzek
40845e6b8f
D3D: Make StateCache thread safe
2018-03-10 15:56:21 +10:00
Stenzek
bfb4709c80
AbstractPipeline: Allow setting pipeline to null
2018-03-10 15:56:18 +10:00
Stenzek
5e5dfe686a
VKPipeline: Fix render pass and add pipeline layout fields
2018-03-10 15:56:13 +10:00
Stenzek
a61fcb0088
OGL: Fix abstract pipelines on drivers without binding layout support
2018-03-10 15:56:06 +10:00
Stenzek
00204dc988
OGL: Make ProgramShaderCache thread safe
2018-03-10 15:55:56 +10:00