- May 20, 2019
-
-
Lioncash authored
-
Lioncash authored
Gets rid of the need to special-case brace handling depending on the overload used, and makes it consistent across the board with how fmt handles them. Strings with compile-time deducible strings are directly forwarded to std::string's constructor, so we don't need to worry about the performance difference here, as it'll be identical.
-
Lioncash authored
-
- May 19, 2019
-
-
Lioncash authored
In a lot of places throughout the decompiler, string concatenation via operator+ is used quite heavily. This is usually fine, when not heavily used, but when used extensively, can be a problem. operator+ creates an entirely new heap allocated temporary string and given we perform expressions like: std::string thing = a + b + c + d; this ends up with a lot of unnecessary temporary strings being created and discarded, which kind of thrashes the heap more than we need to. Given we utilize fmt in some AddLine calls, we can make this a part of the ShaderWriter's API. We can make an overload that simply acts as a passthrough to fmt. This way, whenever things need to be appended to a string, the operation can be done via a single string formatting operation instead of discarding numerous temporary strings. This also has the benefit of making the strings themselves look nicer and makes it easier to spot errors in them.
-
bunnei authored
shader: Implement AL2P and ALD.PHYS
-
bunnei authored
kernel/svc: Reorganize and fix up the initial handling of svcSetThreadCoreMask()
-
Hexagon12 authored
Dma_pusher: ASSERT on empty command_list
-
Hexagon12 authored
Correct possible error on Rasterizer Caches
-
Hexagon12 authored
shader/shader_ir: Minor changes
-
Hexagon12 authored
gl_shader_disk_cache: Minor cleanup
-
Fernando Sahmkow authored
This is a measure to avoid crashes on command list reading as an empty command_list is considered a NOP.
-
Hexagon12 authored
service/audren_u: Get rid of magic values within GetAudioRendererWorkBufferSize
-
Hexagon12 authored
video_core/gpu_thread: Remove redundant copy constructor for CommandDataContainer
-
Hexagon12 authored
service/set: Correct and simplify behavior related to copying language codes
-
Hexagon12 authored
GPU/MMEInterpreter: Ignore the 'exit' flag when it's executed inside a delay slot.
-
Hexagon12 authored
yuzu: Remove explicit types from locks where applicable
-
Hexagon12 authored
maxwell_3d: reduce severity of different component formats assert.
-
Hexagon12 authored
video_core/engines/maxwell_3d: Add is_trivially_copyable_v check for Regs
-
Sebastian Valle authored
video_core/engines/maxwell_3d: Simplify for loops into ranged for loops within InitializeRegisterDefaults()
-
Hexagon12 authored
service/am: Add missing return in error case for IStorageAccessor's Read/Write()
-
Hexagon12 authored
gl_rasterizer: Pass the right number of array quad vertices count
-
Hexagon12 authored
gl_rasterizer: Limit OpenGL point size to a minimum of 1
-
Sebastian Valle authored
video_core/engines/engine_upload: Minor tidying
-
Sebastian Valle authored
maxwell_to_gl: Add TriangleFan primitive topology
-
Hexagon12 authored
ipc_helpers: Amend floating-point type in Pop<double> specialization
-
Hexagon12 authored
yuzu/debugger: Specify string conversions explicitly
-
Sebastian Valle authored
core/kernel/object: Rename ResetType enum members for clarity
-
Sebastian Valle authored
kernel/svc: Mark GetThreadList() and UnmapProcessCodeMemory() as internally linked
-
Sebastian Valle authored
yuzu/applets/profile_select: Mark header string as translatable
-
Sebastian Valle authored
gl_shader_gen: std::move objects where applicable
-
Hexagon12 authored
CMakeLists: Handle VS 2019 in a less annoying manner
-
Hexagon12 authored
yuzu/bootmanager: Explicitly enable deprecated OpenGL features on compat
-
Hexagon12 authored
yuzu/util: Remove unused spinbox.cpp/.h
-
Lioncash authored
constexpr internally links by default, so the inline specifier is unnecessary.
-
Lioncash authored
Many of these constructors don't even need to be templated. The only ones that need to be templated are the ones that actually make use of the parameter pack. Even then, since std::vector accepts an initializer list, we can supply the parameter pack directly to it instead of creating our own copy of the list, then copying it again into the std::vector.
-
Lioncash authored
shader/shader_ir: Remove unnecessary template parameter packs from Operation() overloads where applicable These overloads don't actually make use of the parameter pack, so they can be turned into regular non-template function overloads.
-
Lioncash authored
These don't actually modify instance state, so they can be marked as const member functions
-
Lioncash authored
This has been left unused since the removal of the vestigial surface viewer. Given it has no uses left, this can be removed as well.
-
Lioncash authored
Given the class contains quite a lot of non-trivial types, place the constructor and destructor within the cpp file to avoid inlining construction and destruction code everywhere the class is used.
-
Lioncash authored
Avoids performing copies into the pair being returned. Instead, we can just move the resources into the pair, avoiding the need to make copies of both the std::string and ShaderEntries struct.
-