diff options
author | Chris Johns <chrisj@rtems.org> | 2019-01-15 17:47:41 +1100 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2019-02-09 10:06:34 +1100 |
commit | d8c70ba65b13cd023b50b8aed5d91e455017cdd5 (patch) | |
tree | f78c3441ef74a7315ef4f7850bd27631bf0d2502 /testsuites/libtests/dl09/dl-o5.h | |
parent | libdl: Fix the support for constructors and desctructors. (diff) | |
download | rtems-d8c70ba65b13cd023b50b8aed5d91e455017cdd5.tar.bz2 |
libdl: Add support for trampolines
- Trampolines or fixups for veneers provide long jump support
for instruciton sets that implement short relative address
branches. The linker provides trampolines when creating a
static image. This patch adds trampoline support to libdl
and the ARM architecture.
- The dl09 test requires enough memory so modules are outside
the relative branch instruction ranges for the architecture.
Updates #3685
Diffstat (limited to 'testsuites/libtests/dl09/dl-o5.h')
-rw-r--r-- | testsuites/libtests/dl09/dl-o5.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/testsuites/libtests/dl09/dl-o5.h b/testsuites/libtests/dl09/dl-o5.h new file mode 100644 index 0000000000..bb4ce468a2 --- /dev/null +++ b/testsuites/libtests/dl09/dl-o5.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2018 Chris Johns <chrisj@rtems.org>. + * All rights reserved. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.org/license/LICENSE. + */ + +#include <stdint.h> + +#if !defined(DL05_H) +#define DL05_H + +/* + * A set of variables in dl-o5 referenced by dl-03 and unresolved when dl-o3 is + * loaded. They are all uninitialised variables with various sizes in a mixed + * order to get various alignments. These and dl-o4 variables are designed to + * force the dependent tables to grow. + */ + +extern uint64_t dl05_unresolv_1; +extern uint16_t dl05_unresolv_2; +extern uint32_t dl05_unresolv_3; +extern uint8_t dl05_unresolv_4; +extern int64_t dl05_unresolv_5; + +int rtems_main_o5 (void); + +#endif |