diff --git a/libraries/libmesosphere/source/arch/arm64/svc/kern_svc_tables.cpp b/libraries/libmesosphere/source/arch/arm64/svc/kern_svc_tables.cpp index db2842e1b..f4f62acff 100644 --- a/libraries/libmesosphere/source/arch/arm64/svc/kern_svc_tables.cpp +++ b/libraries/libmesosphere/source/arch/arm64/svc/kern_svc_tables.cpp @@ -59,6 +59,7 @@ namespace ams::kern::svc { /* Set omit-frame-pointer to prevent GCC from emitting MOV X29, SP instructions. */ #pragma GCC push_options + #pragma GCC optimize ("-O2") #pragma GCC optimize ("omit-frame-pointer") AMS_SVC_FOREACH_KERN_DEFINITION(DECLARE_SVC_STRUCT, _) diff --git a/libraries/libmesosphere/source/kern_k_page_table_base.cpp b/libraries/libmesosphere/source/kern_k_page_table_base.cpp index b53e9bf27..85e33ed96 100644 --- a/libraries/libmesosphere/source/kern_k_page_table_base.cpp +++ b/libraries/libmesosphere/source/kern_k_page_table_base.cpp @@ -3055,7 +3055,7 @@ namespace ams::kern { } #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") Result KPageTableBase::SetupForIpcClient(PageLinkedList *page_list, size_t *out_blocks_needed, KProcessAddress address, size_t size, KMemoryPermission test_perm, KMemoryState dst_state) { /* Validate pre-conditions. */ diff --git a/libraries/libmesosphere/source/kern_k_server_session.cpp b/libraries/libmesosphere/source/kern_k_server_session.cpp index 40a466cd1..712cca8b0 100644 --- a/libraries/libmesosphere/source/kern_k_server_session.cpp +++ b/libraries/libmesosphere/source/kern_k_server_session.cpp @@ -18,7 +18,7 @@ namespace ams::kern { #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") namespace ipc { diff --git a/libraries/libmesosphere/source/svc/kern_svc_ipc.cpp b/libraries/libmesosphere/source/svc/kern_svc_ipc.cpp index af6b56595..7454237bc 100644 --- a/libraries/libmesosphere/source/svc/kern_svc_ipc.cpp +++ b/libraries/libmesosphere/source/svc/kern_svc_ipc.cpp @@ -18,7 +18,7 @@ namespace ams::kern::svc { #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") /* ============================= Common ============================= */ diff --git a/libraries/libvapours/include/vapours/svc/codegen/impl/svc_codegen_impl_kernel_svc_wrapper.hpp b/libraries/libvapours/include/vapours/svc/codegen/impl/svc_codegen_impl_kernel_svc_wrapper.hpp index e0f1998c2..e553ae080 100644 --- a/libraries/libvapours/include/vapours/svc/codegen/impl/svc_codegen_impl_kernel_svc_wrapper.hpp +++ b/libraries/libvapours/include/vapours/svc/codegen/impl/svc_codegen_impl_kernel_svc_wrapper.hpp @@ -528,6 +528,7 @@ namespace ams::svc::codegen::impl { /* Set omit-frame-pointer to prevent GCC from emitting MOV X29, SP instructions. */ #pragma GCC push_options +#pragma GCC optimize ("-O2") #pragma GCC optimize ("omit-frame-pointer") static ALWAYS_INLINE ReturnType WrapSvcFunction() { diff --git a/libraries/libvapours/include/vapours/svc/codegen/svc_codegen_kernel_svc_wrapper.hpp b/libraries/libvapours/include/vapours/svc/codegen/svc_codegen_kernel_svc_wrapper.hpp index aa650250d..eaa348150 100644 --- a/libraries/libvapours/include/vapours/svc/codegen/svc_codegen_kernel_svc_wrapper.hpp +++ b/libraries/libvapours/include/vapours/svc/codegen/svc_codegen_kernel_svc_wrapper.hpp @@ -29,6 +29,7 @@ namespace ams::svc::codegen { public: /* Set omit-frame-pointer to prevent GCC from emitting MOV X29, SP instructions. */ #pragma GCC push_options +#pragma GCC optimize ("-O2") #pragma GCC optimize ("omit-frame-pointer") static ALWAYS_INLINE void Call64() { diff --git a/libraries/libvapours/include/vapours/svc/ipc/svc_message_buffer.hpp b/libraries/libvapours/include/vapours/svc/ipc/svc_message_buffer.hpp index 03239f5c5..aae8f8d1c 100644 --- a/libraries/libvapours/include/vapours/svc/ipc/svc_message_buffer.hpp +++ b/libraries/libvapours/include/vapours/svc/ipc/svc_message_buffer.hpp @@ -20,7 +20,7 @@ namespace ams::svc::ipc { #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") ALWAYS_INLINE u32 *GetMessageBuffer() { return GetThreadLocalRegion()->message_buffer; diff --git a/libraries/libvapours/include/vapours/util/util_intrusive_list.hpp b/libraries/libvapours/include/vapours/util/util_intrusive_list.hpp index c7c6c4119..70b8d68dd 100644 --- a/libraries/libvapours/include/vapours/util/util_intrusive_list.hpp +++ b/libraries/libvapours/include/vapours/util/util_intrusive_list.hpp @@ -22,7 +22,7 @@ namespace ams::util { #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") /* Forward declare implementation class for Node. */ namespace impl { diff --git a/libraries/libvapours/include/vapours/util/util_intrusive_red_black_tree.hpp b/libraries/libvapours/include/vapours/util/util_intrusive_red_black_tree.hpp index f706db580..8ff2cd575 100644 --- a/libraries/libvapours/include/vapours/util/util_intrusive_red_black_tree.hpp +++ b/libraries/libvapours/include/vapours/util/util_intrusive_red_black_tree.hpp @@ -23,7 +23,7 @@ namespace ams::util { #pragma GCC push_options - #pragma GCC optimize ("-O2") + #pragma GCC optimize ("-O3") namespace impl {