include/linker.h (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
/*! \file
* Wrapper for symbols defined in the linker.
*/
#ifndef LINKER_H
#define LINKER_H
#include <stdint.h>
extern uint8_t __SS_VMA;
extern uint8_t __SS_LMA;
extern uint8_t __SS_SIZE;
extern uint8_t __KERNEL_VMA;
extern uint8_t __KERNEL_LMA;
extern uint8_t __KERNEL_SIZE;
extern uint8_t __APP_VMA;
extern uint8_t __APP_LMA;
extern uint8_t __APP_SIZE;
extern uint8_t __ELF_VMA;
extern uint8_t __ELF_LMA;
extern uint8_t __ELF_SIZE;
#define SS_VMA (&__SS_VMA)
#define SS_LMA (&__SS_LMA)
#define SS_SIZE (uint32_t)(&__SS_SIZE)
#define KERNEL_VMA (&__KERNEL_VMA)
#define KERNEL_LMA (&__KERNEL_LMA)
#define KERNEL_SIZE (uint32_t)(&__KERNEL_SIZE)
#define APP_VMA (&__APP_VMA)
#define APP_LMA (&__APP_LMA)
#define APP_SIZE (uint32_t)(&__APP_SIZE)
#define ELF_VMA (&__ELF_VMA)
#define ELF_LMA (&__ELF_LMA)
#define ELF_SIZE (uint32_t)(&__ELF_SIZE)
#endif