From 6d30470de8ba82d2d01fc9ea1860c7e15aa44adf Mon Sep 17 00:00:00 2001 From: Kimplul Date: Fri, 1 Nov 2024 12:43:08 +0200 Subject: mark some hot path functions inline + Gives a hint to the LTO optimizer to more agressively inline the functions, seems to bring a slight performance increase --- arch/riscv64/kernel/vmem.c | 6 +++--- src/tcb.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/riscv64/kernel/vmem.c b/arch/riscv64/kernel/vmem.c index a215208..5a6e71c 100644 --- a/arch/riscv64/kernel/vmem.c +++ b/arch/riscv64/kernel/vmem.c @@ -690,7 +690,7 @@ void reuse_rpc(struct tcb *t) set_bits(*pte, vp_flags(VM_U)); } -void new_rpc(struct tcb *t) +inline void new_rpc(struct tcb *t) { struct vmem *b = t->arch.rpc_leaf; int top_idx = t->arch.rpc_idx; @@ -716,7 +716,7 @@ void new_rpc(struct tcb *t) set_bits(*pte, vp_flags(VM_U)); } -void destroy_rpc(struct tcb *t) +inline void destroy_rpc(struct tcb *t) { struct vmem *b = t->arch.rpc_leaf; int top_idx = t->arch.rpc_idx; @@ -750,7 +750,7 @@ void destroy_rpc(struct tcb *t) t->arch.rpc_idx = ctx - 2; } -void grow_rpc(struct tcb *t, vm_t top) +inline void grow_rpc(struct tcb *t, vm_t top) { assert(is_aligned(top, BASE_PAGE_SIZE)); struct vmem *b = t->arch.rpc_leaf; diff --git a/src/tcb.c b/src/tcb.c index 06f49db..67e9448 100644 --- a/src/tcb.c +++ b/src/tcb.c @@ -344,7 +344,7 @@ void use_tcb(struct tcb *t) use_vmem(t->rpc.vmem); } -struct tcb *get_tcb(id_t tid) +inline struct tcb *get_tcb(id_t tid) { assert(tcbs); -- cgit v1.3