Jan Beich
61f52b5d33
tests: add missing libcore dependency after 37d6cbc200
...
$ (cmake -DENABLE_SDL2:BOOL=false /path/to/citra; gmake)
[...]
[ 85%] Linking CXX executable tests
../common/libcommon.a(microprofile.cpp.o): In function `MicroProfileThreadStart(pthread**, void* (*)(void*))':
src/common/microprofile.cpp:(.text+0x41): undefined reference to `pthread_create'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
2016-12-07 18:30:49 +00:00
bunnei
7da33afec8
Merge pull request #2232 from wwylele/other-save
...
FS: implement archives for other game save data
2016-12-07 10:17:02 -05:00
Subv
fdf1d042e0
Use boost remove_erase_if instead of the erase-remove idiom
2016-12-06 19:31:53 -05:00
Subv
bf232b89f3
Improved the algorithm for GetHighestPriorityReadyThread.
2016-12-06 19:15:32 -05:00
emmauss
4865993e6f
Implement Frame rate limiter ( #2223 )
...
* implement frame limiter
* fixes
2016-12-06 14:33:19 -05:00
Yuri Kunde Schlesner
88a27e6771
Merge pull request #2264 from JayFoxRox/print-shader
...
Print shaders in case of error
2016-12-05 22:59:18 -08:00
Jannik Vogel
869743d34c
ASSERT that shader was linked successfully
2016-12-05 21:11:24 +01:00
Jannik Vogel
d676c9a06f
Report shader uniform block size in case of mismatch
2016-12-05 21:11:24 +01:00
Jannik Vogel
d8142ae075
Print broken shader code to log
2016-12-05 21:11:24 +01:00
Subv
06b2b80d31
Return an error code when connecting to a saturated port.
...
The error code was taken from the 3DS kernel.
2016-12-05 13:59:57 -05:00
Subv
7eaf6faa7d
HLE: Use a member variable instead of a virtual function to retrieve the max number of sessions that can be connected to an HLE service at the same time.
2016-12-05 13:44:41 -05:00
Jannik Vogel
305cc20144
gdbstub: Remove unused include
2016-12-05 19:09:16 +01:00
Jannik Vogel
19b1180952
Unify Windows ICON resource name
2016-12-05 19:09:16 +01:00
Jannik Vogel
89e57a3fb0
Support mingw cross-compile
2016-12-05 19:09:16 +01:00
Subv
708ece3fff
Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, 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-05 12:05:00 -05:00
Subv
728bb5f40b
Kernel: Remove the Redirection handle type.
2016-12-05 11:13:22 -05:00
Subv
977039e722
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
2016-12-05 11:02:08 -05:00
Yuri Kunde Schlesner
1ecb83a65c
Merge pull request #2200 from j-selby/fix-mingw-crash
...
Disable Microprofile on Mingw builds
2016-12-04 20:33:19 -08:00
Yuri Kunde Schlesner
7c9dd58580
Merge pull request #2269 from Subv/update_dynarmic
...
Dynarmic: Update dynarmic to version 54d051977f7a6af9c7596ba6a4e6eb467bd1e0bc
2016-12-04 19:41:03 -08:00
Subv
6e103da61e
Dynarmic: Update dynarmic to version
...
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-04 21:40:12 -05:00
James
d0bc804700
Disable Microprofile on Mingw builds
...
This fixes a crash when starting games
2016-12-05 13:10:14 +11:00
Subv
44c59feca6
Threading: Added some utility functions and const correctness.
2016-12-04 09:58:36 -05:00
Yuri Kunde Schlesner
f3f5e7d2dd
Merge pull request #2266 from yuriks/fix-displaytransfer
...
OpenGL: Fix DisplayTransfer accel when input width != output width
2016-12-04 06:30:42 -08:00
Yuri Kunde Schlesner
6fb4f73dec
GSP: Downgrade log severity of SetAxiConfigQoSMode
...
This function doesn't need to do anything for HLE and some games call it
quite often, spamming up the logs.
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
515096c197
OpenGL: Non-zero stride only makes sense for linear buffers
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
2271fa76fb
OpenGL: Ensure framebuffer binding is restored if completion check fails
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
f207da3a5a
OpenGL: Fix DisplayTransfer accel when input width != output width
...
Fixes #2246 , #2261
2016-12-04 05:21:57 -08:00
Yuri Kunde Schlesner
9b3739ebca
Merge pull request #2259 from JayFoxRox/fix-fallback
...
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
2016-12-03 22:11:39 -08:00
Subv
5bc10a74f6
Threading: Reworked the way our scheduler works.
...
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-03 22:38:14 -05:00
Jannik Vogel
3020767914
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
2016-12-04 04:26:33 +01:00
Yuri Kunde Schlesner
84225aad2a
Merge pull request #2257 from citra-emu/fix-clang-format
...
Travis: Use a stable version of clang-format
2016-12-03 16:13:40 -08:00
Yuri Kunde Schlesner
90fd00648c
clang-format: Fix coding style
2016-12-03 01:32:46 -08:00
Yuri Kunde Schlesner
cd529f7414
Travis: Use a stable version of clang-format
2016-12-03 01:32:46 -08:00
Yuri Kunde Schlesner
41dc2fcac7
Merge pull request #2255 from JayFoxRox/lsl4
...
shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted
2016-12-02 20:24:24 -08:00
Subv
4703561c9e
Declare empty ServerSession and ClientSession constructors as default.
2016-12-02 22:58:02 -05:00
Jannik Vogel
62c76b4207
shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted
2016-12-02 04:33:15 +01:00
Mat M
690694bcfc
Merge pull request #2251 from JayFoxRox/remove-version
...
Remove unused version.h in citra_qt
2016-12-01 14:24:40 -05:00
Subv
811d684274
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
2016-12-01 10:47:06 -05:00
Jannik Vogel
63e5851830
Remove unused version.h
2016-12-01 16:38:46 +01:00
Subv
4c4f50dfaf
Fixed the rebase mistakes.
2016-11-30 23:28:31 -05:00
Subv
4f2326c8a9
A bit of a redesign.
...
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-30 23:12:35 -05:00
Subv
d2305d375f
IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists.
...
Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request.
2016-11-30 23:04:00 -05:00
Subv
edcacd7cdd
Kernel/HLE: Service::Interface no longer inherits from any Kernel object, 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-30 23:03:59 -05:00
Subv
96df92e98f
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-11-30 23:02:06 -05:00
Subv
302ef594a6
Kernel/IPC: Use Ports and Sessions as the fundamental building block of 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-30 23:02:05 -05:00
Yuri Kunde Schlesner
35c7f317cf
Merge pull request #2228 from freiro/winver_fix
...
Move WINVER definition to cmake and a bit of cleanup
2016-11-30 15:47:08 -08:00
Sebastian Valle
547baeb208
Merge pull request #2243 from MerryMage/r15
...
dynarmic: Fix ABI violation
2016-11-30 17:41:20 -05:00
MerryMage
9089f83b0c
dynarmic: Fix ABI violation
...
Caused by not saving/restoring the x64 r15 register on entry/exit from
JITted code.
Closes #2224 .
2016-11-30 19:12:46 +00:00
wwylele
3fab1ddf64
Merge pull request #2241 from Subv/clang_format
...
ClangFormat: Fixed the clang-format errors
2016-11-30 18:52:53 +02:00
freiro
7f7bab0fa1
Appending PLATFORM_LIBRARIES instead of redefining them
2016-11-30 16:28:21 +01:00