blob: c5cac2e03ce2bfd4f6ace8d6717ad7611db24395 [file] [log] [blame]
/*
* Copyright (c) 2018, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#ifndef IVY_H
#define IVY_H
#include <stdint.h>
/* Linker symbols used to figure out the memory layout of Ivy. */
extern uintptr_t __TEXT_START__, __TEXT_END__;
#define IVY_TEXT_START ((uintptr_t)&__TEXT_START__)
#define IVY_TEXT_END ((uintptr_t)&__TEXT_END__)
extern uintptr_t __RODATA_START__, __RODATA_END__;
#define IVY_RODATA_START ((uintptr_t)&__RODATA_START__)
#define IVY_RODATA_END ((uintptr_t)&__RODATA_END__)
extern uintptr_t __DATA_START__, __DATA_END__;
#define IVY_DATA_START ((uintptr_t)&__DATA_START__)
#define IVY_DATA_END ((uintptr_t)&__DATA_END__)
extern uintptr_t __BSS_START__, __BSS_END__;
#define IVY_BSS_START ((uintptr_t)&__BSS_START__)
#define IVY_BSS_END ((uintptr_t)&__BSS_END__)
#endif /* __IVY_H__ */