mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2025-05-17 08:34:23 -04:00
Integrate new result macros. (#1780)
* result: try out some experimental shenanigans * result: sketch out some more shenanigans * result: see what it looks like to convert kernel to use result conds instead of guards * make rest of kernel use experimental new macro-ing
This commit is contained in:
parent
375ba615be
commit
96f95b9f95
109 changed files with 1355 additions and 1380 deletions
|
@ -65,7 +65,7 @@ namespace ams::kern::svc {
|
|||
*out_process_id = d->GetProcessUnsafe()->GetProcessId();
|
||||
}
|
||||
|
||||
return ResultSuccess();
|
||||
R_SUCCEED();
|
||||
}
|
||||
|
||||
Result GetProcessList(int32_t *out_num_processes, KUserPointer<uint64_t *> out_process_ids, int32_t max_out_count) {
|
||||
|
@ -78,7 +78,7 @@ namespace ams::kern::svc {
|
|||
}
|
||||
|
||||
/* Get the process list. */
|
||||
return KProcess::GetProcessList(out_num_processes, out_process_ids, max_out_count);
|
||||
R_RETURN(KProcess::GetProcessList(out_num_processes, out_process_ids, max_out_count));
|
||||
}
|
||||
|
||||
Result CreateProcess(ams::svc::Handle *out, const ams::svc::CreateProcessParameter ¶ms, KUserPointer<const uint32_t *> user_caps, int32_t num_caps) {
|
||||
|
@ -135,7 +135,7 @@ namespace ams::kern::svc {
|
|||
}
|
||||
break;
|
||||
default:
|
||||
return svc::ResultInvalidEnumValue();
|
||||
R_THROW(svc::ResultInvalidEnumValue());
|
||||
}
|
||||
|
||||
/* Validate the pool partition. */
|
||||
|
@ -147,7 +147,7 @@ namespace ams::kern::svc {
|
|||
case ams::svc::CreateProcessFlag_PoolPartitionSystemNonSecure:
|
||||
break;
|
||||
default:
|
||||
return svc::ResultInvalidEnumValue();
|
||||
R_THROW(svc::ResultInvalidEnumValue());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -243,7 +243,7 @@ namespace ams::kern::svc {
|
|||
/* Add the process to the handle table. */
|
||||
R_TRY(handle_table.Add(out, process));
|
||||
|
||||
return ResultSuccess();
|
||||
R_SUCCEED();
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
|
@ -254,7 +254,7 @@ namespace ams::kern::svc {
|
|||
|
||||
/* Invoke the implementation. */
|
||||
if constexpr (std::same_as<T, ams::svc::CreateProcessParameter>) {
|
||||
return CreateProcess(out, params, user_caps, num_caps);
|
||||
R_RETURN(CreateProcess(out, params, user_caps, num_caps));
|
||||
} else {
|
||||
/* Convert the parameters. */
|
||||
ams::svc::CreateProcessParameter converted_params;
|
||||
|
@ -270,7 +270,7 @@ namespace ams::kern::svc {
|
|||
converted_params.system_resource_num_pages = params.system_resource_num_pages;
|
||||
|
||||
/* Invoke. */
|
||||
return CreateProcess(out, converted_params, user_caps, num_caps);
|
||||
R_RETURN(CreateProcess(out, converted_params, user_caps, num_caps));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -294,7 +294,7 @@ namespace ams::kern::svc {
|
|||
process->SetIdealCoreId(core_id);
|
||||
|
||||
/* Run the process. */
|
||||
return process->Run(priority, static_cast<size_t>(main_thread_stack_size));
|
||||
R_RETURN(process->Run(priority, static_cast<size_t>(main_thread_stack_size)));
|
||||
}
|
||||
|
||||
Result TerminateProcess(ams::svc::Handle process_handle) {
|
||||
|
@ -316,7 +316,7 @@ namespace ams::kern::svc {
|
|||
ExitProcess();
|
||||
}
|
||||
|
||||
return ResultSuccess();
|
||||
R_SUCCEED();
|
||||
}
|
||||
|
||||
Result GetProcessInfo(int64_t *out, ams::svc::Handle process_handle, ams::svc::ProcessInfoType info_type) {
|
||||
|
@ -352,10 +352,10 @@ namespace ams::kern::svc {
|
|||
}
|
||||
break;
|
||||
default:
|
||||
return svc::ResultInvalidEnumValue();
|
||||
R_THROW(svc::ResultInvalidEnumValue());
|
||||
}
|
||||
|
||||
return ResultSuccess();
|
||||
R_SUCCEED();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -367,27 +367,27 @@ namespace ams::kern::svc {
|
|||
}
|
||||
|
||||
Result GetProcessId64(uint64_t *out_process_id, ams::svc::Handle process_handle) {
|
||||
return GetProcessId(out_process_id, process_handle);
|
||||
R_RETURN(GetProcessId(out_process_id, process_handle));
|
||||
}
|
||||
|
||||
Result GetProcessList64(int32_t *out_num_processes, KUserPointer<uint64_t *> out_process_ids, int32_t max_out_count) {
|
||||
return GetProcessList(out_num_processes, out_process_ids, max_out_count);
|
||||
R_RETURN(GetProcessList(out_num_processes, out_process_ids, max_out_count));
|
||||
}
|
||||
|
||||
Result CreateProcess64(ams::svc::Handle *out_handle, KUserPointer<const ams::svc::lp64::CreateProcessParameter *> parameters, KUserPointer<const uint32_t *> caps, int32_t num_caps) {
|
||||
return CreateProcess(out_handle, parameters, caps, num_caps);
|
||||
R_RETURN(CreateProcess(out_handle, parameters, caps, num_caps));
|
||||
}
|
||||
|
||||
Result StartProcess64(ams::svc::Handle process_handle, int32_t priority, int32_t core_id, uint64_t main_thread_stack_size) {
|
||||
return StartProcess(process_handle, priority, core_id, main_thread_stack_size);
|
||||
R_RETURN(StartProcess(process_handle, priority, core_id, main_thread_stack_size));
|
||||
}
|
||||
|
||||
Result TerminateProcess64(ams::svc::Handle process_handle) {
|
||||
return TerminateProcess(process_handle);
|
||||
R_RETURN(TerminateProcess(process_handle));
|
||||
}
|
||||
|
||||
Result GetProcessInfo64(int64_t *out_info, ams::svc::Handle process_handle, ams::svc::ProcessInfoType info_type) {
|
||||
return GetProcessInfo(out_info, process_handle, info_type);
|
||||
R_RETURN(GetProcessInfo(out_info, process_handle, info_type));
|
||||
}
|
||||
|
||||
/* ============================= 64From32 ABI ============================= */
|
||||
|
@ -397,27 +397,27 @@ namespace ams::kern::svc {
|
|||
}
|
||||
|
||||
Result GetProcessId64From32(uint64_t *out_process_id, ams::svc::Handle process_handle) {
|
||||
return GetProcessId(out_process_id, process_handle);
|
||||
R_RETURN(GetProcessId(out_process_id, process_handle));
|
||||
}
|
||||
|
||||
Result GetProcessList64From32(int32_t *out_num_processes, KUserPointer<uint64_t *> out_process_ids, int32_t max_out_count) {
|
||||
return GetProcessList(out_num_processes, out_process_ids, max_out_count);
|
||||
R_RETURN(GetProcessList(out_num_processes, out_process_ids, max_out_count));
|
||||
}
|
||||
|
||||
Result CreateProcess64From32(ams::svc::Handle *out_handle, KUserPointer<const ams::svc::ilp32::CreateProcessParameter *> parameters, KUserPointer<const uint32_t *> caps, int32_t num_caps) {
|
||||
return CreateProcess(out_handle, parameters, caps, num_caps);
|
||||
R_RETURN(CreateProcess(out_handle, parameters, caps, num_caps));
|
||||
}
|
||||
|
||||
Result StartProcess64From32(ams::svc::Handle process_handle, int32_t priority, int32_t core_id, uint64_t main_thread_stack_size) {
|
||||
return StartProcess(process_handle, priority, core_id, main_thread_stack_size);
|
||||
R_RETURN(StartProcess(process_handle, priority, core_id, main_thread_stack_size));
|
||||
}
|
||||
|
||||
Result TerminateProcess64From32(ams::svc::Handle process_handle) {
|
||||
return TerminateProcess(process_handle);
|
||||
R_RETURN(TerminateProcess(process_handle));
|
||||
}
|
||||
|
||||
Result GetProcessInfo64From32(int64_t *out_info, ams::svc::Handle process_handle, ams::svc::ProcessInfoType info_type) {
|
||||
return GetProcessInfo(out_info, process_handle, info_type);
|
||||
R_RETURN(GetProcessInfo(out_info, process_handle, info_type));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue