diff options
Diffstat (limited to 'src/include/compiler.h')
| -rw-r--r-- | src/include/compiler.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/include/compiler.h b/src/include/compiler.h index 4fe4f025d..df0a01a6e 100644 --- a/src/include/compiler.h +++ b/src/include/compiler.h @@ -71,6 +71,23 @@ __asm__ ( ".equ\tDEBUG_LEVEL, " DEBUG_SYMBOL_STR ); #define __unused __attribute__((unused)) #define __used __attribute__((used)) +/* + * To save space in the binary when multiple-driver images are + * compiled, uninitialised data areas can be shared between drivers. + * This will typically be used to share statically-allocated receive + * and transmit buffers between drivers. + * + * Use as e.g. + * + * struct { + * char rx_buf[NUM_RX_BUF][RX_BUF_SIZE]; + * char tx_buf[TX_BUF_SIZE]; + * } my_static_data __shared; + * + */ + +#define __shared __asm__ ( "_shared_bss" ); + #endif /* ASSEMBLY */ #endif /* COMPILER_H */ |
