diff options
| author | Jim Huang <jserv.tw@gmail.com> | 2024-11-07 04:56:34 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-06 21:56:34 +0100 |
| commit | 394e81af452f64439fb8d8ab7254ce19f71d4390 (patch) | |
| tree | fd5968a4ee6c3887ba74aaa631d7f75a48ce9e25 /src/include | |
| parent | 6af8d70cc1620bf8e7927ade2e42e4cea41384be (diff) | |
| download | box64-394e81af452f64439fb8d8ab7254ce19f71d4390.tar.gz box64-394e81af452f64439fb8d8ab7254ce19f71d4390.zip | |
[RBTREE] Unify naming and prevent unintended symbol exposure (#2005)
Red-black tree operations now consistently use the 'rbtree_' prefix, and internal functions remain unexposed. Tested on RV64GC, resulting in a 498-byte reduction in the .text section size.
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/box64context.h | 4 | ||||
| -rw-r--r-- | src/include/rbtree.h | 20 |
2 files changed, 11 insertions, 13 deletions
diff --git a/src/include/box64context.h b/src/include/box64context.h index d27a23af..ecf60f7f 100644 --- a/src/include/box64context.h +++ b/src/include/box64context.h @@ -35,7 +35,7 @@ typedef struct library_s library_t; typedef struct linkmap_s linkmap_t; typedef struct linkmap32_s linkmap32_t; typedef struct kh_threadstack_s kh_threadstack_t; -typedef struct rbtree rbtree; +typedef struct rbtree rbtree_t; typedef struct atfork_fnc_s { uintptr_t prepare; uintptr_t parent; @@ -172,7 +172,7 @@ typedef struct box64context_s { pthread_mutex_t mutex_bridge; #endif uintptr_t max_db_size; // the biggest (in x86_64 instructions bytes) built dynablock - rbtree* db_sizes; + rbtree_t* db_sizes; int trace_dynarec; pthread_mutex_t mutex_lock; // this is for the Test interpreter #if defined(__riscv) || defined(__loongarch64) diff --git a/src/include/rbtree.h b/src/include/rbtree.h index 0266c144..e2b684cb 100644 --- a/src/include/rbtree.h +++ b/src/include/rbtree.h @@ -1,19 +1,17 @@ -#include <stdint.h> - #ifndef RBTREE_H #define RBTREE_H -typedef struct rbtree rbtree; +#include <stdint.h> -rbtree* init_rbtree(const char* name); -void delete_rbtree(rbtree *tree); +typedef struct rbtree rbtree_t; -uint32_t rb_get(rbtree *tree, uintptr_t addr); -int rb_get_end(rbtree* tree, uintptr_t addr, uint32_t* val, uintptr_t* end); -int rb_set(rbtree *tree, uintptr_t start, uintptr_t end, uint32_t data); -int rb_unset(rbtree *tree, uintptr_t start, uintptr_t end); -uintptr_t rb_get_righter(rbtree *tree); +rbtree_t* rbtree_init(const char* name); +void rbtree_delete(rbtree_t* tree); -void print_rbtree(const rbtree *tree); +uint32_t rb_get(rbtree_t* tree, uintptr_t addr); +int rb_get_end(rbtree_t* tree, uintptr_t addr, uint32_t* val, uintptr_t* end); +int rb_set(rbtree_t* tree, uintptr_t start, uintptr_t end, uint32_t data); +int rb_unset(rbtree_t* tree, uintptr_t start, uintptr_t end); +uintptr_t rb_get_righter(rbtree_t* tree); #endif // RBTREE_H |