summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
diff options
context:
space:
mode:
authorGravatar Lioncash2018-08-31 12:21:34 -0400
committerGravatar Lioncash2018-08-31 16:30:14 -0400
commit4a587b81b285bcd41246329e89591be7cfe37c8a (patch)
tree8eda46d4aac083d23a52223e1a3fc46bc6690a6c /src/core/hle/kernel
parentMerge pull request #1205 from bunnei/improve-rasterizer-cache-2 (diff)
downloadyuzu-4a587b81b285bcd41246329e89591be7cfe37c8a.tar.gz
yuzu-4a587b81b285bcd41246329e89591be7cfe37c8a.tar.xz
yuzu-4a587b81b285bcd41246329e89591be7cfe37c8a.zip
core/core: Replace includes with forward declarations where applicable
The follow-up to e2457418dae19b889b2ad85255bb95d4cd0e4bff, which replaces most of the includes in the core header with forward declarations. This makes it so that if any of the headers the core header was previously including change, then no one will need to rebuild the bulk of the core, due to core.h being quite a prevalent inclusion. This should make turnaround for changes much faster for developers.
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r--src/core/hle/kernel/address_arbiter.cpp2
-rw-r--r--src/core/hle/kernel/hle_ipc.cpp1
-rw-r--r--src/core/hle/kernel/server_session.cpp6
-rw-r--r--src/core/hle/kernel/svc.cpp4
-rw-r--r--src/core/hle/kernel/thread.cpp3
5 files changed, 12 insertions, 4 deletions
diff --git a/src/core/hle/kernel/address_arbiter.cpp b/src/core/hle/kernel/address_arbiter.cpp
index 03a954a9f..6657accd5 100644
--- a/src/core/hle/kernel/address_arbiter.cpp
+++ b/src/core/hle/kernel/address_arbiter.cpp
@@ -8,9 +8,11 @@
8#include "common/assert.h" 8#include "common/assert.h"
9#include "common/common_types.h" 9#include "common/common_types.h"
10#include "core/core.h" 10#include "core/core.h"
11#include "core/core_cpu.h"
11#include "core/hle/kernel/errors.h" 12#include "core/hle/kernel/errors.h"
12#include "core/hle/kernel/object.h" 13#include "core/hle/kernel/object.h"
13#include "core/hle/kernel/process.h" 14#include "core/hle/kernel/process.h"
15#include "core/hle/kernel/scheduler.h"
14#include "core/hle/kernel/thread.h" 16#include "core/hle/kernel/thread.h"
15#include "core/hle/result.h" 17#include "core/hle/result.h"
16#include "core/memory.h" 18#include "core/memory.h"
diff --git a/src/core/hle/kernel/hle_ipc.cpp b/src/core/hle/kernel/hle_ipc.cpp
index db7aef766..7264be906 100644
--- a/src/core/hle/kernel/hle_ipc.cpp
+++ b/src/core/hle/kernel/hle_ipc.cpp
@@ -18,6 +18,7 @@
18#include "core/hle/kernel/event.h" 18#include "core/hle/kernel/event.h"
19#include "core/hle/kernel/handle_table.h" 19#include "core/hle/kernel/handle_table.h"
20#include "core/hle/kernel/hle_ipc.h" 20#include "core/hle/kernel/hle_ipc.h"
21#include "core/hle/kernel/kernel.h"
21#include "core/hle/kernel/object.h" 22#include "core/hle/kernel/object.h"
22#include "core/hle/kernel/process.h" 23#include "core/hle/kernel/process.h"
23#include "core/hle/kernel/server_session.h" 24#include "core/hle/kernel/server_session.h"
diff --git a/src/core/hle/kernel/server_session.cpp b/src/core/hle/kernel/server_session.cpp
index 90c9a5aff..aba0cab96 100644
--- a/src/core/hle/kernel/server_session.cpp
+++ b/src/core/hle/kernel/server_session.cpp
@@ -13,6 +13,7 @@
13#include "core/hle/kernel/client_session.h" 13#include "core/hle/kernel/client_session.h"
14#include "core/hle/kernel/handle_table.h" 14#include "core/hle/kernel/handle_table.h"
15#include "core/hle/kernel/hle_ipc.h" 15#include "core/hle/kernel/hle_ipc.h"
16#include "core/hle/kernel/kernel.h"
16#include "core/hle/kernel/process.h" 17#include "core/hle/kernel/process.h"
17#include "core/hle/kernel/server_session.h" 18#include "core/hle/kernel/server_session.h"
18#include "core/hle/kernel/session.h" 19#include "core/hle/kernel/session.h"
@@ -104,11 +105,10 @@ ResultCode ServerSession::HandleSyncRequest(SharedPtr<Thread> thread) {
104 // The ServerSession received a sync request, this means that there's new data available 105 // The ServerSession received a sync request, this means that there's new data available
105 // from its ClientSession, so wake up any threads that may be waiting on a svcReplyAndReceive or 106 // from its ClientSession, so wake up any threads that may be waiting on a svcReplyAndReceive or
106 // similar. 107 // similar.
107
108 auto& handle_table = Core::System::GetInstance().Kernel().HandleTable();
109 Kernel::HLERequestContext context(this); 108 Kernel::HLERequestContext context(this);
110 u32* cmd_buf = (u32*)Memory::GetPointer(thread->GetTLSAddress()); 109 u32* cmd_buf = (u32*)Memory::GetPointer(thread->GetTLSAddress());
111 context.PopulateFromIncomingCommandBuffer(cmd_buf, *Core::CurrentProcess(), handle_table); 110 context.PopulateFromIncomingCommandBuffer(cmd_buf, *Core::CurrentProcess(),
111 kernel.HandleTable());
112 112
113 ResultCode result = RESULT_SUCCESS; 113 ResultCode result = RESULT_SUCCESS;
114 // If the session has been converted to a domain, handle the domain request 114 // If the session has been converted to a domain, handle the domain request
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp
index 099d1053f..5da71cff0 100644
--- a/src/core/hle/kernel/svc.cpp
+++ b/src/core/hle/kernel/svc.cpp
@@ -12,16 +12,20 @@
12#include "common/logging/log.h" 12#include "common/logging/log.h"
13#include "common/microprofile.h" 13#include "common/microprofile.h"
14#include "common/string_util.h" 14#include "common/string_util.h"
15#include "core/arm/exclusive_monitor.h"
15#include "core/core.h" 16#include "core/core.h"
17#include "core/core_cpu.h"
16#include "core/core_timing.h" 18#include "core/core_timing.h"
17#include "core/hle/kernel/address_arbiter.h" 19#include "core/hle/kernel/address_arbiter.h"
18#include "core/hle/kernel/client_port.h" 20#include "core/hle/kernel/client_port.h"
19#include "core/hle/kernel/client_session.h" 21#include "core/hle/kernel/client_session.h"
20#include "core/hle/kernel/event.h" 22#include "core/hle/kernel/event.h"
21#include "core/hle/kernel/handle_table.h" 23#include "core/hle/kernel/handle_table.h"
24#include "core/hle/kernel/kernel.h"
22#include "core/hle/kernel/mutex.h" 25#include "core/hle/kernel/mutex.h"
23#include "core/hle/kernel/process.h" 26#include "core/hle/kernel/process.h"
24#include "core/hle/kernel/resource_limit.h" 27#include "core/hle/kernel/resource_limit.h"
28#include "core/hle/kernel/scheduler.h"
25#include "core/hle/kernel/shared_memory.h" 29#include "core/hle/kernel/shared_memory.h"
26#include "core/hle/kernel/svc.h" 30#include "core/hle/kernel/svc.h"
27#include "core/hle/kernel/svc_wrap.h" 31#include "core/hle/kernel/svc_wrap.h"
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp
index 520ea0853..3d10d9af2 100644
--- a/src/core/hle/kernel/thread.cpp
+++ b/src/core/hle/kernel/thread.cpp
@@ -16,6 +16,7 @@
16#include "common/thread_queue_list.h" 16#include "common/thread_queue_list.h"
17#include "core/arm/arm_interface.h" 17#include "core/arm/arm_interface.h"
18#include "core/core.h" 18#include "core/core.h"
19#include "core/core_cpu.h"
19#include "core/core_timing.h" 20#include "core/core_timing.h"
20#include "core/core_timing_util.h" 21#include "core/core_timing_util.h"
21#include "core/hle/kernel/errors.h" 22#include "core/hle/kernel/errors.h"
@@ -23,8 +24,8 @@
23#include "core/hle/kernel/kernel.h" 24#include "core/hle/kernel/kernel.h"
24#include "core/hle/kernel/object.h" 25#include "core/hle/kernel/object.h"
25#include "core/hle/kernel/process.h" 26#include "core/hle/kernel/process.h"
27#include "core/hle/kernel/scheduler.h"
26#include "core/hle/kernel/thread.h" 28#include "core/hle/kernel/thread.h"
27#include "core/hle/lock.h"
28#include "core/hle/result.h" 29#include "core/hle/result.h"
29#include "core/memory.h" 30#include "core/memory.h"
30 31