/* Access to variables in .data16 and .text16 in a way compatible with librm */
#define __data16( variable ) variable
+#define __data16_array( variable, array ) variable array
#define __text16( variable ) variable
+#define __text16_array( variable,array ) variable array
#define __use_data16( variable ) variable
#define __use_text16( variable ) variable
#define __from_data16( variable ) variable
extern char *text16;
#define __data16( variable ) \
- _data16_ ## variable __asm__ ( #variable ) \
- __attribute__ (( section ( ".data16" ) ))
+ __attribute__ (( section ( ".data16" ) )) \
+ _data16_ ## variable __asm__ ( #variable )
+
+#define __data16_array( variable, array ) \
+ __attribute__ (( section ( ".data16" ) )) \
+ _data16_ ## variable array __asm__ ( #variable )
#define __text16( variable ) \
- _text16_ ## variable __asm__ ( #variable ) \
- __attribute__ (( section ( ".text16.data" ) ))
+ __attribute__ (( section ( ".text16.data" ) )) \
+ _text16_ ## variable __asm__ ( #variable )
+
+#define __text16_array( variable, array ) \
+ __attribute__ (( section ( ".text16.data" ) )) \
+ _text16_ ## variable array __asm__ ( #variable )
#define __use_data16( variable ) \
( * ( ( typeof ( _data16_ ## variable ) * ) \