Commit Graph

14881 Commits

Author SHA1 Message Date
45d29436b3 Tests/HostTiming: Correct GCC Compile error. 2020-06-18 16:29:28 -04:00
e77ee67bfa Common/Fiber: Address Feedback and Correct Memory leaks. 2020-06-18 16:29:27 -04:00
b6655aa2e4 Common/Fiber: Implement Rewind on Boost Context. 2020-06-18 16:29:27 -04:00
59ce6e6d06 Common/uint128: Correct MSVC Compilation in old versions. 2020-06-18 16:29:26 -04:00
18f54f7486 Common/Fiber: Document fiber interexchange. 2020-06-18 16:29:26 -04:00
137d862d9b Common/Fiber: Implement Rewinding. 2020-06-18 16:29:25 -04:00
41013381d6 Common/Fiber: Additional corrections to f_context. 2020-06-18 16:29:25 -04:00
7d2b1a6ec4 Common/Fiber: Correct f_context based Fibers. 2020-06-18 16:29:24 -04:00
8f6ffcd5c4 Host Timing: Correct clang format. 2020-06-18 16:29:23 -04:00
96b2d8419c HostTiming: Correct rebase and implement AddTicks. 2020-06-18 16:29:22 -04:00
49a7e0984a Core/HostTiming: Allow events to be advanced manually. 2020-06-18 16:29:22 -04:00
1f7dd36499 Common/Tests: Address Feedback 2020-06-18 16:29:21 -04:00
3398f701ee Common: Make MinGW build use Windows Fibers instead of fcontext_t 2020-06-18 16:29:20 -04:00
1bd706344e Common/Tests: Clang Format. 2020-06-18 16:29:19 -04:00
03e4f5dac4 Common: Correct fcontext fibers. 2020-06-18 16:29:19 -04:00
e3524d1142 Common: Refactor & Document Wall clock. 2020-06-18 16:29:18 -04:00
234b5ff6a9 Common: Implement WallClock Interface and implement a native clock for x64 2020-06-18 16:29:17 -04:00
0f8e5a1465 Tests: Add base tests to host timing 2020-06-18 16:29:17 -04:00
62e35ffc0e Core: Implement a Host Timer. 2020-06-18 16:29:16 -04:00
be320a9e10 Common: Polish Fiber class, add comments, asserts and more tests. 2020-06-18 16:29:15 -04:00
8d0e3c5422 Tests: Add tests for fibers and refactor/fix Fiber class 2020-06-18 16:29:15 -04:00
bc266a9d98 Common: Implement a basic Fiber class. 2020-06-18 16:29:14 -04:00
13ed9438fb Common: Implement a basic SpinLock class 2020-06-18 16:29:13 -04:00
bfa6193eb9 Merge pull request #4108 from ReinUsesLisp/a32-implicit-cast
arm_dynarmic_32: Fix implicit conversion error in SetTPIDR_EL0
2020-06-18 16:07:15 -04:00
778043a44c arm_dynarmic_32: Fix implicit conversion error in SetTPIDR_EL0
On MSVC builds we treat conversion warnings as errors.
2020-06-18 16:52:15 -03:00
edb2114bac Merge pull request #4092 from Morph1984/image-bindings
gl_device: Reserve 4 image bindings for fragment stage
2020-06-18 04:59:48 -03:00
1394a581f2 Merge pull request #4100 from MerryMage/no-a32-interp
arm_dynarmic: CP15 changes
2020-06-17 22:44:52 -04:00
52bcfac116 arm_dynarmic_cp15: Implement CNTPCT 2020-06-17 17:10:24 +01:00
109df7705f arm_dynarmic_cp15: Update CP15 2020-06-17 17:10:24 +01:00
32a127faaa arm_dynarmic_32: InterpreterFallback should never happen 2020-06-17 17:10:24 +01:00
a8ac99b619 Merge pull request #4086 from MerryMage/abi
xbyak_abi: Cleanup
2020-06-17 11:20:52 -04:00
b660ef6c8a Merge pull request #4089 from MerryMage/macrojit-cleanup-1
macro_jit_x64: Cleanup
2020-06-16 23:44:48 -04:00
0f57bbfa3f Merge pull request #3976 from Neodyblue/qdarkstyle_fix_prop
qt_themes: remove unknown qss property from dark theme
2020-06-16 22:27:27 -04:00
2a3d4cad63 externals: Revert to libressl, as build is broken with find_package(OpenSSL). (#4093)
* externals: Revert to libressl, as build is broken with find_package(OpenSLL).

* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).

* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).
2020-06-16 21:46:19 -04:00
798ec003ce Merge pull request #4041 from ReinUsesLisp/arb-decomp
gl_arb_decompiler: Implement an assembly shader decompiler
2020-06-16 14:56:23 -04:00
f22d02083c Merge pull request #3966 from Morph1984/hide-internal-resolution-ui
yuzu/frontend: Remove internal resolution option
2020-06-16 14:12:17 -04:00
e2f5d16540 gl_device: Reserve at least 4 image bindings for fragment stage
Due to the limitation of GL_MAX_IMAGE_UNITS being low (8) on Intel's and Nvidia's proprietary drivers, we have to reserve an appropriate amount of image bindings for each of the stages. So far games have been observed to use 4 image bindings on the fragment stage (Kirby Star Allies) and 1 on the vertex stage (TWD series).
No games thus far in my limited testing used more than 4 images concurrently and across all currently active programs.
This fixes shader compilation errors on Kirby Star Allies on OpenGL (GLSL/GLASM)
2020-06-16 03:03:07 -04:00
ed2cd9d8f3 Merge pull request #4091 from MerryMage/cmakelists-xbyak-order
CMakeLists: xbyak comes before dynarmic
2020-06-15 22:39:48 -04:00
0bd9bc7201 Merge pull request #4066 from ReinUsesLisp/shared-ptr-buf
buffer_cache: Avoid passing references of shared pointers and misc style changes
2020-06-15 22:29:32 -03:00
256cb2979b CMakeLists: xbyak comes before dynarmic 2020-06-15 22:37:27 +01:00
cf0aad7d6a macro_jit_x64: Remove NEXT_PARAMETER
Not required, as PARAMETERS can just be incremented directly.
2020-06-15 21:19:38 +01:00
1799f4e774 macro_jit_x64: Remove unused function Compile_WriteCarry 2020-06-15 21:19:38 +01:00
c09a9e5cc7 macro_jit_x64: Select better registers
All registers are now callee-save registers.

RBX and RBP selected for STATE and RESULT because these are most commonly accessed; this is to avoid the REX prefix.
RBP not used for STATE because there are some SIB restrictions, RBX emits smaller code.
2020-06-15 21:19:38 +01:00
79aa7b3ace macro_jit_x64: Remove REGISTERS
Unnecessary since this is just an offset from STATE.
2020-06-15 21:00:59 +01:00
35db6e1c68 macro_jit_x64: Remove JITState::parameters
This can be passed in as an argument instead.
2020-06-15 20:55:02 +01:00
389549b80d macro_jit_x64: Remove METHOD_ADDRESS_64
Unnecessary variable.
2020-06-15 20:51:33 +01:00
a6a43a5ae0 macro_jit_x64: Remove RESULT_64
This Reg64 codepath has the exact same behaviour as the Reg32 one.
2020-06-15 20:35:08 +01:00
7c6203dc5e xbyak_abi: Prefer returning a struct to using out parameters in ABI_CalculateFrameSize 2020-06-15 19:07:11 +01:00
36362e9695 xbyak_abi: Register indexes should be unsigned 2020-06-15 19:07:11 +01:00
d563017dfe xbyak_abi: Remove *GPS variants of stack manipulation functions 2020-06-15 18:59:54 +01:00