Lioncash
580237143f
set: Correct return code size of value in GetAvailableLanguageCodes()
...
The return code should be 32-bit in size.
2018-07-23 00:29:22 -04:00
bunnei
b2edb0588b
Merge pull request #769 from bunnei/shader-mask-fixes
...
shader_bytecode: Implement other TEXS masks.
2018-07-22 18:03:31 -07:00
Lioncash
b146d2c363
string_util: Get rid of separate resize() in CPToUTF16(), UTF16ToUTF8(), CodeToUTF8() and UTF8ToUTF16()
...
There's no need to perform the resize separately here, since the
constructor allows presizing the buffer.
Also move the empty string check before the construction of the string
to make the early out more straightforward.
2018-07-22 16:39:21 -04:00
Lioncash
1b3055f3b3
string_util: Use emplace_back() in SplitString() instead of push_back()
...
This is equivalent to doing:
push_back(std::string(""));
which is likely not to cause issues, assuming a decent std::string
implementation with small-string optimizations implemented in its
design, however it's still a little unnecessary to copy that buffer
regardless. Instead, we can use emplace_back() to directly construct the
empty string within the std::vector instance, eliminating any possible
overhead from the copy.
2018-07-22 15:36:32 -04:00
Lioncash
0087815b80
string_util: Remove unnecessary std::string instance in TabsToSpaces()
...
We can just use the variant of std::string's replace() function that can
replace an occurrence with N copies of the same character, eliminating
the need to allocate a std::string containing a buffer of spaces.
2018-07-22 15:35:48 -04:00
bunnei
52e95caea1
Merge pull request #774 from Subv/atomic_signal
...
Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real kernel.
2018-07-22 12:26:03 -07:00
bunnei
6869692062
Merge pull request #773 from Subv/gl_ext_check
...
Frontend: Check for more required OpenGL extensions during startup.
2018-07-22 11:47:07 -07:00
bunnei
facf50271e
Merge pull request #768 from lioncash/string-view
...
file_util, vfs: Use std::string_view where applicable
2018-07-22 11:32:28 -07:00
Subv
4872e746a6
Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real kernel.
2018-07-22 12:27:24 -05:00
bunnei
474c48a139
Merge pull request #770 from lioncash/construct
...
gl_shader_decompiler: Remove redundant Subroutine construction in AddSubroutine()
2018-07-22 10:24:20 -07:00
Subv
54a8c1884a
Frontend: Check for more required OpenGL extensions during startup.
2018-07-22 12:05:38 -05:00
Mat M
97f6700bab
Merge pull request #638 from MerryMage/mp
...
Implement exclusive monitor
2018-07-22 12:48:44 -04:00
Sebastian Valle
92d909886c
Merge pull request #772 from MerryMage/dynarmic
...
externals: Update dynarmic to fc6b73bd
2018-07-22 11:45:47 -05:00
MerryMage
b044723138
externals: Update dynarmic to fc6b73bd
...
Resolves issues:
* 128-bit exclusive writes on Windows
* Non-updating CNTPCT_EL0
fc6b73 a64_emit_x64: Ensure host has updated ticks in EmitA64GetCNTPCT
888c67 a64_emit_x64: Fix stack misalignment on Windows for 128-bit exclusive writes
352d53 emit_x64_aes: Eliminate extraneous usage of a scratch register in EmitAESInverseMixColumns()
ab7fe7 A64: Implement SADDLV
09bd2b A64: Implement UADDLV
62e86d fp: Use forward declarations where applicable
b3edb7 emit_x64_vector: Append 'v' prefix onto movq in AVX path
2018-07-22 16:26:47 +01:00
MerryMage
b877a20af0
Implement exclusive monitor
2018-07-22 15:55:17 +01:00
Lioncash
c6cf64e567
gl_shader_decompiler: Remove redundant Subroutine construction in AddSubroutine()
...
We don't need to toss away the Subroutine instance after the find() call
and reconstruct another instance with the same data right after it.
Particularly give Subroutine contains a std::set.
2018-07-22 03:30:35 -04:00
bunnei
2f91f63367
shader_bytecode: Implement other TEXS masks.
2018-07-22 03:23:15 -04:00
Lioncash
e6c9bfe425
vfs: Correct file_p variable usage within InterpretAsDirectory()
...
ReplaceFileWithSubdirectory() takes a VirtualFile and a VirtualDir, but
it was being passed a string as one of its arguments. The only reason
this never caused issues is because this template isn't instantiated
anywhere yet.
This corrects an issue before it occurs.
2018-07-22 03:22:28 -04:00
Lioncash
81ef4d3734
file_util, vfs: Use std::string_view where applicable
...
Avoids unnecessary construction of std::string instances where
applicable.
2018-07-22 03:22:21 -04:00
bunnei
b210cc6a27
Merge pull request #765 from lioncash/file
...
file_util: Remove goto usages from Copy()
2018-07-22 00:03:35 -07:00
bunnei
a17b60ba51
Merge pull request #767 from bunnei/shader-cleanup
...
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
2018-07-22 00:03:17 -07:00
bunnei
1be1db9636
Merge pull request #766 from bunnei/shader-sel
...
gl_shader_decompiler: Implement SEL instruction.
2018-07-21 23:13:27 -07:00
bunnei
44aeb5f424
Merge pull request #764 from lioncash/move
...
file_util: Minor changes to ScanDirectoryTree() and ForeachDirectoryEntry()
2018-07-21 22:05:30 -07:00
bunnei
6f6571437c
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
2018-07-22 01:00:44 -04:00
bunnei
633007ed24
gl_shader_decompiler: Implement SEL instruction.
2018-07-22 00:37:12 -04:00
bunnei
bcaee367cf
Merge pull request #761 from bunnei/improve-raster-cache
...
Improvements to rasterizer cache
2018-07-21 20:28:53 -07:00
Lioncash
128c95d22b
file_util: Remove goto usages from Copy()
...
We can just leverage std::unique_ptr to automatically close these for us
in error cases instead of jumping to the end of the function to call
fclose on them.
2018-07-21 23:08:55 -04:00
Lioncash
073e4cb169
file_util: Use a u64 to represent number of entries
...
This avoids a truncating cast on size. I doubt we'd ever traverse a
directory this large, however we also shouldn't truncate sizes away.
2018-07-21 22:42:08 -04:00
Lioncash
de1e473151
file_util: std::move FST entries in ScanDirectoryTree()
...
Avoids unnecessary copies when building up the FST entries.
2018-07-21 22:31:44 -04:00
bunnei
8f02fa6bd3
gl_rasterizer_cache: Blit surfaces on recreation instead of flush and load.
2018-07-21 21:51:06 -04:00
bunnei
a845ca4b63
gl_rasterizer_cache: Use GPUVAddr as cache key, not parameter set.
2018-07-21 21:51:06 -04:00
bunnei
08a983f4b9
gl_rasterizer_cache: Use zeta_width and zeta_height registers for depth buffer.
2018-07-21 21:51:06 -04:00
bunnei
5593048222
gl_rasterizer: Use zeta_enable register to enable depth buffer.
2018-07-21 21:51:06 -04:00
bunnei
4f563de274
maxwell_3d: Add depth buffer enable, width, and height registers.
2018-07-21 21:51:05 -04:00
bunnei
b6165907b9
Merge pull request #759 from lioncash/redundant
...
file_util: Remove redundant duplicate return in GetPathWithoutTop()
2018-07-21 18:50:38 -07:00
bunnei
7824948e97
Merge pull request #748 from lioncash/namespace
...
video_core: Use nested namespaces where applicable
2018-07-21 18:50:14 -07:00
bunnei
793b8d0e3b
Merge pull request #758 from lioncash/sync
...
common: Remove synchronized_wrapper.h
2018-07-21 18:30:31 -07:00
bunnei
6690387922
Merge pull request #760 from lioncash/path
...
file_util: Use an enum class for GetUserPath()
2018-07-21 18:30:04 -07:00
bunnei
eac7926664
Merge pull request #762 from Subv/ioctl2
...
GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.
2018-07-21 18:28:55 -07:00
Subv
9282c11abf
GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.
...
This behaves quite similarly to the SubmitGPFIFO command. Referenced from Ryujinx.
Many thanks to @gdkchan for investigating this!
2018-07-21 15:50:02 -05:00
Lioncash
a0d85ece5b
file_util: Use an enum class for GetUserPath()
...
Instead of using an unsigned int as a parameter and expecting a user to
always pass in the correct values, we can just convert the enum into an
enum class and use that type as the parameter type instead, which makes
the interface more type safe.
We also get rid of the bookkeeping "NUM_" element in the enum by just
using an unordered map. This function is generally low-frequency in
terms of calls (and I'd hope so, considering otherwise would mean we're
slamming the disk with IO all the time) so I'd consider this acceptable
in this case.
2018-07-21 16:21:19 -04:00
Lioncash
83c6aac7ec
file_util: Remove explicit type from std::min() in GetPathWithoutTop()
...
Given both operands are the same type, there won't be an issue with
overload selection that requires making this explicit.
2018-07-21 15:19:32 -04:00
Lioncash
01d8924c26
file_util: Remove redundant duplicate return in GetPathWithoutTop()
2018-07-21 15:18:23 -04:00
Lioncash
9ca1735ba4
common: Remove synchronized_wrapper.h
...
This is entirely unused in the codebase.
2018-07-21 14:51:44 -04:00
bunnei
90cf74dfa4
Merge pull request #754 from lioncash/part
...
partition_filesystem, vfs_real: Minor changes
2018-07-21 11:38:52 -07:00
bunnei
432573a75e
Merge pull request #750 from lioncash/ctx
...
arm_interface: Remove unused tls_address member of ThreadContext
2018-07-21 11:38:16 -07:00
bunnei
ae4c7511e5
Merge pull request #756 from lioncash/dynarmic
...
externals: Update dynarmic to 7ea1241
2018-07-21 11:37:38 -07:00
bunnei
ad05736259
Merge pull request #746 from lioncash/tests
...
tests/arm_test_common: Minor changes
2018-07-21 10:55:29 -07:00
bunnei
e35dd63097
Merge pull request #747 from lioncash/unimplemented
...
gl_shader_manager: Remove unimplemented function prototype
2018-07-21 10:54:58 -07:00
bunnei
c69f3b5362
Merge pull request #755 from lioncash/ctor
...
file_sys/errors: Remove redundant object constructor calls
2018-07-21 10:53:53 -07:00