Yuri Kunde Schlesner
8ad41775cc
Kernel: Start using boost::intrusive_ptr for lifetime management
2015-01-09 19:43:52 +07:00
Yuri Kunde Schlesner
d751de7341
Kernel: Don't re-assign object's handle when duplicating one
2015-01-09 19:43:51 +07:00
bunnei
6ae12424df
Merge pull request #444 from yuriks/handle-reform2
...
Kernel Lifetime Reform Pt. 2
2015-01-09 12:59:35 +07:00
bunnei
86e07124ad
Merge pull request #436 from kevinhartman/system-core
...
Warn if a new thread is intended to be run on the system CPU core
2015-01-09 11:14:35 +07:00
bunnei
e5cf344155
Merge pull request #453 from yuriks/vs-parallel
...
CMake: Enable VS parallel builds for a good reduction in compile times
2015-01-09 10:15:43 +07:00
Yuri Kunde Schlesner
f983d955f9
CMake: Enable VS parallel builds for a good reduction in compile times
...
This enables the /MP compiler flag, which parallelizes builds of by
distributing compilation of individual object files across workes
processes, instead of being limited to per-project parallelism.
Reduces the time for a full compile from 72 s to 45 s on my machine.
2015-01-09 12:42:35 +07:00
Yuri Kunde Schlesner
78ea76e12f
Thread: Fix nullptr access in a logging function
2015-01-09 04:02:28 +07:00
Yuri Kunde Schlesner
7f1557fbbd
Thread: Rename thread_queue => thread_list
2015-01-09 04:02:17 +07:00
Yuri Kunde Schlesner
9bf8462b96
Thread: Reduce use of Handles and move some funcs to inside the class.
2015-01-09 04:02:15 +07:00
Yuri Kunde Schlesner
ba72208cd4
Kernel: Move Thread's definition to the header file
2015-01-09 03:51:55 +07:00
Yuri Kunde Schlesner
7b3452c730
Move ThreadContext to core/core.h and deal with the fallout
2015-01-09 03:51:55 +07:00
bunnei
d46f650036
Merge pull request #255 from Subv/cbranch_3
...
Implemented timers
2015-01-08 22:38:33 +07:00
bunnei
97cfdd16e6
Merge pull request #451 from Subv/wut
...
Core: Fixed a crash and removed some unused variables.
2015-01-08 22:20:42 +07:00
Subv
40c1439c34
Core: Fixed a crash and removed some unused variables.
...
ARM_Disasm only has static methods, so there's no need to have an instance of it.
2015-01-08 21:49:41 +07:00
Subv
07044651ef
SVC: Implemented the Timer service calls.
2015-01-08 21:22:14 +07:00
bunnei
0d0d6ef31a
Merge pull request #450 from Subv/ticks_fix
...
Timing: Use CoreTiming::GetTicks to keep track of ticks.
2015-01-08 20:01:19 +07:00
Subv
fc842963c8
DynCom: Add a comment to GetTicks.
2015-01-08 19:46:00 +07:00
Subv
620d77b7e3
Timing: Use CoreTiming::GetTicks to keep track of ticks.
...
This will keep track of idle ticks for us, and fixes some tickcount-related issues
2015-01-08 19:39:14 +07:00
bunnei
cf1bbe8705
Merge pull request #443 from Subv/sleep_thread
...
SVC: Fixed SleepThread
2015-01-08 18:45:35 +07:00
Subv
dfc440785a
SVC: Fixed SleepThread.
...
It will now properly wait the specified number of nanoseconds and then wake up the thread.
2015-01-08 18:39:12 +07:00
bunnei
2432f317e4
Merge pull request #446 from lioncash/umaal
...
dyncom: Fix UMAAL
2015-01-08 11:22:20 +07:00
Lioncash
1cef6e92d5
dyncom: Fix UMAAL
...
These need to be done as a 64-bit operation.
2015-01-08 11:09:21 +07:00
bunnei
72915423c3
Merge pull request #441 from Kingcom/CallStack
...
Add check for valid address to call stack
2015-01-07 21:00:46 +07:00
bunnei
91d96840ea
Merge pull request #439 from Subv/idle_thread_m
...
Threads: Use a dummy idle thread when no other are ready.
2015-01-07 20:45:05 +07:00
Subv
60a373a786
Threads: Use a dummy idle thread when no other are ready.
...
This thread will not actually execute instructions, it will only advance the timing/events and try to yield immediately to the next ready thread, if there aren't any ready threads then it will be rescheduled and start its job again.
2015-01-07 20:31:31 +07:00
bunnei
b659cac2dc
Merge pull request #404 from bunnei/more-frame-synch-fixes
...
GPU: Toggle active framebuffer each frame
2015-01-07 18:13:48 +07:00
bunnei
f7a3f45f1e
GSP: Toggle active framebuffer each frame
2015-01-07 18:06:00 +07:00
bunnei
e6864a1f41
Merge pull request #431 from yuriks/thread-queue-cleanup
...
Common: Clean up ThreadQueueList
2015-01-07 17:58:31 +07:00
Kevin Hartman
63be6aaadd
Warn if a new thread is intended to be run on the system CPU core until we implement correct scheduling for such a thread.
2015-01-07 14:14:48 +07:00
bunnei
4c583732f2
Merge pull request #442 from lioncash/smul
...
dyncom: Fix SMULWB/SMULWT
2015-01-07 16:49:30 +07:00
Lioncash
df5e0f9f28
dyncom: Fix SMULWB/SMULWT
...
Wasn't doing proper sign-extension
2015-01-07 16:41:08 +07:00
Kingcom
693f6c54e5
citra-qt: Add check for valid address to call stack
2015-01-07 21:39:40 +07:00
Yuri Kunde Schlesner
122c2bb324
Common: Clean up ThreadQueueList
...
Replace all the C-style complicated buffer management with a std::deque.
In addition to making the code easier to understand it also adds support
for non-POD IdTypes.
Also clean the rest of the code to follow our code style.
2015-01-07 18:38:25 +07:00
bunnei
3eca33c6a4
Merge pull request #425 from Subv/coretiming
...
Ported the CoreTiming namespace from PPSSPP
2015-01-07 15:30:46 +07:00
Subv
9bf82beb4c
CoreTiming: Ported the CoreTiming namespace from PPSSPP
...
Implemented the required calls to make it work.
CoreTiming: Added a new logging class Core_Timing.
2015-01-07 15:08:35 +07:00
bunnei
43ba29f3bf
Merge pull request #440 from yuriks/lifetime-fix
...
Fix double-free in Service manager during shutdown
2015-01-07 14:57:36 +07:00
Yuri Kunde Schlesner
a6ad68190f
Fix double-free in Service manager during shutdown
...
Fixes #423 .
2015-01-07 17:32:31 +07:00
bunnei
317fe1e528
Merge pull request #438 from lioncash/swp
...
dyncom: Fix SWPB
2015-01-07 09:53:29 +07:00
bunnei
5ae3a9657d
Merge pull request #434 from lioncash/sm
...
dyncom: Move over SMLALXY
2015-01-07 09:51:06 +07:00
Lioncash
75c211c10f
dyncom: Fix SWPB
2015-01-07 09:36:06 +07:00
Lioncash
511e13f3e3
dyncom: Move over SMLALXY
2015-01-07 00:53:56 +07:00
bunnei
5217e3f873
Merge pull request #421 from linkmauve/remove-dead-platforms
...
Remove dead platform #ifdefs to make the code more readable.
2015-01-06 23:09:20 +07:00
bunnei
088863c921
Merge pull request #376 from Subv/arc_reorder
...
Archives: Change the folder layout of some archives.
2015-01-06 20:13:56 +07:00
Subv
8fbe5d2dca
Archives/Exdata: Don't set concrete_mount_point in the ctor
2015-01-06 16:12:25 +07:00
Subv
32dbb76e00
Archives: Changed the unimplemented archives comment.
...
It now refers to me as the PoC
2015-01-06 15:34:37 +07:00
Subv
5244ac0e9c
Archives: Addressed some comments
2015-01-06 15:02:30 +07:00
Emmanuel Gil Peyrot
6b411c63c9
Common: Remove dead platform #ifdefs to make the code more readable.
...
Symbian, Xbox, Blackberry and iOS got removed.
FreeBSD and Android kept due to them potentially being able to run Citra in the future.
The iOS specific part also got removed from PPSSPP in order to fix a bug there.
2015-01-06 18:57:28 +07:00
bunnei
0bf5a0bfc4
Merge pull request #402 from chrisvj/master
...
Renamed all .hxx headers to .h
2015-01-06 12:43:08 +07:00
bunnei
89bb0ecbd5
Merge pull request #417 from kevinhartman/exclusive-tag-fix
...
Added exclusive reservation granule from ARMv7 spec to dyncom...
2015-01-06 12:42:10 +07:00
chrisvj
b0a14cfe7f
citra-qt: Renamed all .hxx headers to .h
2015-01-06 04:51:54 +07:00