115a4bfc9e
citra-qt: Add explicit casts to prevent some warnings.
2015-01-10 15:55:52 -05:00
57503df97f
CMake: Consistently set _DEBUG and NDEBUG in all platforms
2015-01-10 18:42:24 -02:00
1b01938767
citra-qt: Fixed some Qt errors on initialization
2015-01-10 15:35:26 -05:00
5a4b361f60
Merge pull request #455 from yuriks/handle-reform3
...
Kernel Lifetime Reform Pt. 3
2015-01-10 15:19:21 -05:00
e213f91373
Fix Windows build
2015-01-10 12:32:28 -05:00
e7d2118858
Merge pull request #342 from uppfinnarn/master
...
Build improvements
2015-01-10 02:03:07 -05:00
8ad41775cc
Kernel: Start using boost::intrusive_ptr for lifetime management
2015-01-09 19:43:52 -02:00
d751de7341
Kernel: Don't re-assign object's handle when duplicating one
2015-01-09 19:43:51 -02:00
d0ed01bc7f
Merge pull request #454 from chinhodado/patch-1
...
Cleanup: Remove redundant /Oi flag
2015-01-09 14:23:24 -05:00
6ae12424df
Merge pull request #444 from yuriks/handle-reform2
...
Kernel Lifetime Reform Pt. 2
2015-01-09 12:59:35 -05:00
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 -05:00
f689e97380
Cleanup: Remove redundant /Oi flag
...
`/Oi` is included in `/Ox` already
2015-01-09 10:59:01 -05:00
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 -05:00
b027f7fe15
Looks like that might be needed on OSX after all
2015-01-09 15:50:47 +01:00
d7ad14ae20
Use -pthread where and only where needed
...
Passing -pthread to GCC as a flag makes it both link to libpthread, and make C standard library routines reentrant. This makes the additional explicit links unnecessary.
Additionally, on OSX, this is the default behavior, and clang will print a message about it being unused if it's present there.
2015-01-09 15:50:46 +01:00
1351819810
Link Cocoa, IOKit and CoreVideo on OSX
...
These are implicitly linked by Xcode, but with this, you can also build it with any other generator, which does not have this behavior.
CoreFoundation is included as a part of Cocoa (which is an umbrella framework), and Cocoa is generally recommended to link against, rather than its individual components (CoreFoundation, Foundation, libobjc, ...).
2015-01-09 15:50:46 +01:00
7d7ab70279
Generic PLATFORM_LIBRARIES var
...
This both reduces redundancy in add_executable definitions, and makes it easier to link additional libraries. In particular, extra libraries are needed on OSX - see next commit.
2015-01-09 15:50:46 +01:00
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 -02:00
78ea76e12f
Thread: Fix nullptr access in a logging function
2015-01-09 04:02:28 -02:00
7f1557fbbd
Thread: Rename thread_queue => thread_list
2015-01-09 04:02:17 -02:00
9bf8462b96
Thread: Reduce use of Handles and move some funcs to inside the class.
2015-01-09 04:02:15 -02:00
ba72208cd4
Kernel: Move Thread's definition to the header file
2015-01-09 03:51:55 -02:00
7b3452c730
Move ThreadContext to core/core.h and deal with the fallout
2015-01-09 03:51:55 -02:00
d46f650036
Merge pull request #255 from Subv/cbranch_3
...
Implemented timers
2015-01-08 22:38:33 -05:00
97cfdd16e6
Merge pull request #451 from Subv/wut
...
Core: Fixed a crash and removed some unused variables.
2015-01-08 22:20:42 -05:00
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 -05:00
07044651ef
SVC: Implemented the Timer service calls.
2015-01-08 21:22:14 -05:00
0d0d6ef31a
Merge pull request #450 from Subv/ticks_fix
...
Timing: Use CoreTiming::GetTicks to keep track of ticks.
2015-01-08 20:01:19 -05:00
fc842963c8
DynCom: Add a comment to GetTicks.
2015-01-08 19:46:00 -05:00
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 -05:00
cf1bbe8705
Merge pull request #443 from Subv/sleep_thread
...
SVC: Fixed SleepThread
2015-01-08 18:45:35 -05:00
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 -05:00
2432f317e4
Merge pull request #446 from lioncash/umaal
...
dyncom: Fix UMAAL
2015-01-08 11:22:20 -05:00
1cef6e92d5
dyncom: Fix UMAAL
...
These need to be done as a 64-bit operation.
2015-01-08 11:09:21 -05:00
72915423c3
Merge pull request #441 from Kingcom/CallStack
...
Add check for valid address to call stack
2015-01-07 21:00:46 -05:00
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 -05:00
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 -05:00
b659cac2dc
Merge pull request #404 from bunnei/more-frame-synch-fixes
...
GPU: Toggle active framebuffer each frame
2015-01-07 18:13:48 -05:00
f7a3f45f1e
GSP: Toggle active framebuffer each frame
2015-01-07 18:06:00 -05:00
e6864a1f41
Merge pull request #431 from yuriks/thread-queue-cleanup
...
Common: Clean up ThreadQueueList
2015-01-07 17:58:31 -05:00
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 -08:00
4c583732f2
Merge pull request #442 from lioncash/smul
...
dyncom: Fix SMULWB/SMULWT
2015-01-07 16:49:30 -05:00
df5e0f9f28
dyncom: Fix SMULWB/SMULWT
...
Wasn't doing proper sign-extension
2015-01-07 16:41:08 -05:00
693f6c54e5
citra-qt: Add check for valid address to call stack
2015-01-07 21:39:40 +01:00
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 -02:00
3eca33c6a4
Merge pull request #425 from Subv/coretiming
...
Ported the CoreTiming namespace from PPSSPP
2015-01-07 15:30:46 -05:00
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 -05:00
43ba29f3bf
Merge pull request #440 from yuriks/lifetime-fix
...
Fix double-free in Service manager during shutdown
2015-01-07 14:57:36 -05:00
a6ad68190f
Fix double-free in Service manager during shutdown
...
Fixes #423 .
2015-01-07 17:32:31 -02:00
317fe1e528
Merge pull request #438 from lioncash/swp
...
dyncom: Fix SWPB
2015-01-07 09:53:29 -05:00