7#ifndef ZEPHYR_LLEXT_SYMBOL_H
8#define ZEPHYR_LLEXT_SYMBOL_H
77#define EXPORT_SYMBOL(x) \
78 static const STRUCT_SECTION_ITERABLE(llext_const_symbol, x ## _sym) = { \
79 .name = STRINGIFY(x), .addr = &x, \
82#define LL_EXTENSION_SYMBOL(x) \
83 struct llext_symbol Z_GENERIC_SECTION(".exported_sym") __used \
84 symbol_##x = {STRINGIFY(x), &x}
94#define EXPORT_SYSCALL(x) EXPORT_SYMBOL(z_impl_ ## x)
Constant symbols are unchangeable named memory addresses.
Definition: symbol.h:31
const char *const name
Name of symbol.
Definition: symbol.h:33
const void *const addr
Address of symbol.
Definition: symbol.h:36
Symbols are named memory addresses.
Definition: symbol.h:46
const char * name
Name of symbol.
Definition: symbol.h:48
void * addr
Address of symbol.
Definition: symbol.h:51
A symbol table.
Definition: symbol.h:60
size_t sym_cnt
Number of symbols in the table.
Definition: symbol.h:62
struct llext_symbol * syms
Array of symbols.
Definition: symbol.h:65