aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-06Improved the algorithm for GetHighestPriorityReadyThread.Subv
2016-12-06Implement Frame rate limiter (#2223)emmauss
* implement frame limiter * fixes
2016-12-05Merge pull request #2264 from JayFoxRox/print-shaderYuri Kunde Schlesner
Print shaders in case of error
2016-12-05ASSERT that shader was linked successfullyJannik Vogel
2016-12-05Report shader uniform block size in case of mismatchJannik Vogel
2016-12-05Print broken shader code to logJannik Vogel
2016-12-05Return an error code when connecting to a saturated port.Subv
The error code was taken from the 3DS kernel.
2016-12-05HLE: Use a member variable instead of a virtual function to retrieve the max ↵Subv
number of sessions that can be connected to an HLE service at the same time.
2016-12-05gdbstub: Remove unused includeJannik Vogel
2016-12-05Unify Windows ICON resource nameJannik Vogel
2016-12-05Support mingw cross-compileJannik Vogel
2016-12-05Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, ↵Subv
TranslateRequest and HandleSyncRequestImpl. HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services.
2016-12-05Kernel: Remove the Redirection handle type.Subv
2016-12-05KServerPorts now have an HLE handler "template", which is inherited by all ↵Subv
ServerSessions created from it.
2016-12-04Merge pull request #2200 from j-selby/fix-mingw-crashYuri Kunde Schlesner
Disable Microprofile on Mingw builds
2016-12-04Merge pull request #2269 from Subv/update_dynarmicYuri Kunde Schlesner
Dynarmic: Update dynarmic to version 54d051977f7a6af9c7596ba6a4e6eb467bd1e0bc
2016-12-04Dynarmic: Update dynarmic to versionSubv
54d051977f7a6af9c7596ba6a4e6eb467bd1e0bc dynarmic log: 54d0519 emit_x64: Use movdqa instead of movaps in EmitPackedSubU8 52e1445 Implement USUB8:33 2016 +0000 5c1aab1 Implement CLZ 1a1646d Implement UADD8 7cad694 IR: Implement new pseudo-operation GetGEFromOp 370f654 fuzz_arm: Add tests for parallel add/subtract (modulo) 25f21b5 emit_x64: Inline nzcv computation into EmitFPCompare32 and EmitFPCompare64 52fdec5 CMakeLists: Add support for LLVM on Windows cede5e4 emit_x64: Use xorps/xorpd when argument to TransferToFP32/TransferToFP64 is an immediate zero e166965 Implement VCMP2:33 2016 +0000 f2fe376 Support 64-bit immediates ff00b8c Document register allocator and return stack buffer optimization 95f34c6 reg_alloc: Remove unnecessary breaks after returns (#54) dc9707e externals: Update xbyak to 5.32 de1f831 microinstruction: Make use_count private (#53) 3621a92 reg_alloc: Register allocator related constraints belong with the rest of the register allocator
2016-12-05Disable Microprofile on Mingw buildsJames
This fixes a crash when starting games
2016-12-04Threading: Added some utility functions and const correctness.Subv
2016-12-04Merge pull request #2266 from yuriks/fix-displaytransferYuri Kunde Schlesner
OpenGL: Fix DisplayTransfer accel when input width != output width
2016-12-04GSP: Downgrade log severity of SetAxiConfigQoSModeYuri Kunde Schlesner
This function doesn't need to do anything for HLE and some games call it quite often, spamming up the logs.
2016-12-04OpenGL: Non-zero stride only makes sense for linear buffersYuri Kunde Schlesner
2016-12-04OpenGL: Ensure framebuffer binding is restored if completion check failsYuri Kunde Schlesner
2016-12-04OpenGL: Fix DisplayTransfer accel when input width != output widthYuri Kunde Schlesner
Fixes #2246, #2261
2016-12-03Merge pull request #2259 from JayFoxRox/fix-fallbackYuri Kunde Schlesner
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
2016-12-03Threading: Reworked the way our scheduler works.Subv
Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then. The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback. This new implementation is based off reverse-engineering of the real kernel. See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
2016-12-04shader_jit: Fix non-SSE4.1 path where FLR would not truncateJannik Vogel
2016-12-03Merge pull request #2257 from citra-emu/fix-clang-formatYuri Kunde Schlesner
Travis: Use a stable version of clang-format
2016-12-03clang-format: Fix coding styleYuri Kunde Schlesner
2016-12-03Travis: Use a stable version of clang-formatYuri Kunde Schlesner
2016-12-02Merge pull request #2255 from JayFoxRox/lsl4Yuri Kunde Schlesner
shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted
2016-12-02Declare empty ServerSession and ClientSession constructors as default.Subv
2016-12-02shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shiftedJannik Vogel
2016-12-01Merge pull request #2251 from JayFoxRox/remove-versionMat M
Remove unused version.h in citra_qt
2016-12-01Threads do not wait for the server endpoint to call AcceptSession before ↵Subv
returning from a ConnectToPort or GetServiceHandle call.
2016-12-01Remove unused version.hJannik Vogel
2016-11-30Fixed the rebase mistakes.Subv
2016-11-30A bit of a redesign.Subv
Sessions and Ports are now detached from each other. HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class. The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested. File::OpenLinkFile now creates a new session pair and binds the File instance to it.
2016-11-30IPC/HLE: Associate the ClientSessions with their parent port's HLE interface ↵Subv
if it exists. Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request.
2016-11-30Kernel/HLE: Service::Interface no longer inherits from any Kernel object, ↵Subv
and is now its own standalone class. Interface is now used by aggregation in ClientPort, to forward service commands to their HLE implementation if needed.
2016-11-30fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block ↵Subv
of Inter Process Communication.
2016-11-30 Kernel/IPC: Use Ports and Sessions as the fundamental building block of ↵Subv
Inter Process Communication. All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions. Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed. HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately.
2016-11-30Merge pull request #2228 from freiro/winver_fixYuri Kunde Schlesner
Move WINVER definition to cmake and a bit of cleanup
2016-11-30Merge pull request #2243 from MerryMage/r15Sebastian Valle
dynarmic: Fix ABI violation
2016-11-30dynarmic: Fix ABI violationMerryMage
Caused by not saving/restoring the x64 r15 register on entry/exit from JITted code. Closes #2224.
2016-11-30Merge pull request #2241 from Subv/clang_formatwwylele
ClangFormat: Fixed the clang-format errors
2016-11-30Appending PLATFORM_LIBRARIES instead of redefining themfreiro
2016-11-30WINVER definition moved to CMake and cleanupfreiro
2016-11-30ClangFormat: Fixed the clang-format errorsSubv
2016-11-30Merge pull request #1820 from mailwl/service-verSebastian Valle
Set client SDK version to Service APIs