summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-07-23exclusive_monitor: Use consistent type alias for u64Lioncash
Uses the same type aliases we use for virtual addresses, and converts one lingering usage of std::array<uint64_t, 2> to u128 for consistency.
2018-07-23Merge pull request #695 from DarkLordZach/nro-assetbunnei
NRO Assets and NACP File Format
2018-07-23Merge pull request #778 from lioncash/logbunnei
set: Add missing log call in GetAvailableLanguageCodeCount()
2018-07-23set: Add missing log call in GetAvailableLanguageCodeCount()Lioncash
Forgot to include this in 22f448b6327044076959e338811ee576f3dcf093
2018-07-23Merge pull request #775 from lioncash/strbunnei
string_util: Minor changes
2018-07-23NRO Assets and NACP file formatZach Hilman
Cleanup Review fixes
2018-07-23Merge pull request #777 from lioncash/langbunnei
set: Amend return value of GetAvailableLanguageCodes()
2018-07-23set: Implement GetAvailableLanguageCodeCount()Lioncash
This just returns the size of the language code buffer.
2018-07-23set: Correct return code size of value in GetAvailableLanguageCodes()Lioncash
The return code should be 32-bit in size.
2018-07-22Merge pull request #769 from bunnei/shader-mask-fixesbunnei
shader_bytecode: Implement other TEXS masks.
2018-07-22string_util: Get rid of separate resize() in CPToUTF16(), UTF16ToUTF8(), ↵Lioncash
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-22string_util: Use emplace_back() in SplitString() instead of push_back()Lioncash
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-22string_util: Remove unnecessary std::string instance in TabsToSpaces()Lioncash
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-22Merge pull request #774 from Subv/atomic_signalbunnei
Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real kernel.
2018-07-22Merge pull request #773 from Subv/gl_ext_checkbunnei
Frontend: Check for more required OpenGL extensions during startup.
2018-07-22Merge pull request #768 from lioncash/string-viewbunnei
file_util, vfs: Use std::string_view where applicable
2018-07-22Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real ↵Subv
kernel.
2018-07-22Merge pull request #770 from lioncash/constructbunnei
gl_shader_decompiler: Remove redundant Subroutine construction in AddSubroutine()
2018-07-22Frontend: Check for more required OpenGL extensions during startup.Subv
2018-07-22Merge pull request #638 from MerryMage/mpMat M
Implement exclusive monitor
2018-07-22Merge pull request #772 from MerryMage/dynarmicSebastian Valle
externals: Update dynarmic to fc6b73bd
2018-07-22externals: Update dynarmic to fc6b73bdMerryMage
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-22Implement exclusive monitorMerryMage
2018-07-22gl_shader_decompiler: Remove redundant Subroutine construction in ↵Lioncash
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-22shader_bytecode: Implement other TEXS masks.bunnei
2018-07-22vfs: Correct file_p variable usage within InterpretAsDirectory()Lioncash
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-22file_util, vfs: Use std::string_view where applicableLioncash
Avoids unnecessary construction of std::string instances where applicable.
2018-07-22Merge pull request #765 from lioncash/filebunnei
file_util: Remove goto usages from Copy()
2018-07-22Merge pull request #767 from bunnei/shader-cleanupbunnei
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
2018-07-21Merge pull request #766 from bunnei/shader-selbunnei
gl_shader_decompiler: Implement SEL instruction.
2018-07-21Merge pull request #764 from lioncash/movebunnei
file_util: Minor changes to ScanDirectoryTree() and ForeachDirectoryEntry()
2018-07-22gl_shader_decompiler: Remove unused state tracking and minor cleanup.bunnei
2018-07-22gl_shader_decompiler: Implement SEL instruction.bunnei
2018-07-21Merge pull request #761 from bunnei/improve-raster-cachebunnei
Improvements to rasterizer cache
2018-07-21file_util: Remove goto usages from Copy()Lioncash
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-21file_util: Use a u64 to represent number of entriesLioncash
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-21file_util: std::move FST entries in ScanDirectoryTree()Lioncash
Avoids unnecessary copies when building up the FST entries.
2018-07-21gl_rasterizer_cache: Blit surfaces on recreation instead of flush and load.bunnei
2018-07-21gl_rasterizer_cache: Use GPUVAddr as cache key, not parameter set.bunnei
2018-07-21gl_rasterizer_cache: Use zeta_width and zeta_height registers for depth buffer.bunnei
2018-07-21gl_rasterizer: Use zeta_enable register to enable depth buffer.bunnei
2018-07-21maxwell_3d: Add depth buffer enable, width, and height registers.bunnei
2018-07-21Merge pull request #759 from lioncash/redundantbunnei
file_util: Remove redundant duplicate return in GetPathWithoutTop()
2018-07-21Merge pull request #748 from lioncash/namespacebunnei
video_core: Use nested namespaces where applicable
2018-07-21Merge pull request #758 from lioncash/syncbunnei
common: Remove synchronized_wrapper.h
2018-07-21Merge pull request #760 from lioncash/pathbunnei
file_util: Use an enum class for GetUserPath()
2018-07-21Merge pull request #762 from Subv/ioctl2bunnei
GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.
2018-07-21GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.Subv
This behaves quite similarly to the SubmitGPFIFO command. Referenced from Ryujinx. Many thanks to @gdkchan for investigating this!
2018-07-21file_util: Use an enum class for GetUserPath()Lioncash
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-21file_util: Remove explicit type from std::min() in GetPathWithoutTop()Lioncash
Given both operands are the same type, there won't be an issue with overload selection that requires making this explicit.