Changes

386 bytes added ,  20:56, 23 October 2018
no edit summary
Line 52: Line 52:  
** New MemoryType bit for "JIT allowed".
 
** New MemoryType bit for "JIT allowed".
 
** New MemoryTypes for JitWritable and JitReadOnly.
 
** New MemoryTypes for JitWritable and JitReadOnly.
* New synchronization syscalls 0x34, 0x35 added.
+
* New synchronization syscalls 0x34, 0x35 added: These ones allow implementation of synchronization primitives without a mutex+condvar pair. This is more efficient because when a thread wakes up from a condvar, the mutex is held and needs to perform a syscall to unlock it. If you have N threads blocking on a condvar, you need N-1 syscalls to wake all the threads. With the new syscalls, you can wake up all N with a single syscall.
 +
 
 
* Added new syscall svcDumpInfoNew, but it's stubbed.
 
* Added new syscall svcDumpInfoNew, but it's stubbed.
 
* The linked-list node for KAutoObjects was added to the struct itself instead of being a separate allocation.
 
* The linked-list node for KAutoObjects was added to the struct itself instead of being a separate allocation.