summaryrefslogtreecommitdiffstats
path: root/testsuites/libtests/dl05
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2019-02-02 15:09:53 +1100
committerChris Johns <chrisj@rtems.org>2019-02-09 10:06:34 +1100
commit6c9f0176a916cdbe88e04417e7aa1405d80c500f (patch)
tree1846dd800a123e682f15e49a893426a9a6a064c4 /testsuites/libtests/dl05
parentlibdl: Add support for large memory programs (diff)
downloadrtems-6c9f0176a916cdbe88e04417e7aa1405d80c500f.tar.bz2
libdl: Add powerpc large memory and small data support.
- Add support for architecure sections that can be handled by the architecture back end. - Add trampoline/fixup support for PowerPC. This means the PowerPC now supports large memory loading of applications. - Add a bit allocator to manage small block based regions of memory. - Add small data (sdata/sbss) support for the PowerPC. The support makes the linker allocated small data region of memory a global resource available to libdl loaded object files. Updates #3687 Updates #3685
Diffstat (limited to 'testsuites/libtests/dl05')
-rw-r--r--testsuites/libtests/dl05/dl-load.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/testsuites/libtests/dl05/dl-load.c b/testsuites/libtests/dl05/dl-load.c
index 5ef64577cc..58704c4d14 100644
--- a/testsuites/libtests/dl05/dl-load.c
+++ b/testsuites/libtests/dl05/dl-load.c
@@ -20,6 +20,24 @@
#include "dl-load.h"
+#define TEST_TRACE 0
+#if TEST_TRACE
+ #define DEBUG_TRACE (RTEMS_RTL_TRACE_DETAIL | \
+ RTEMS_RTL_TRACE_WARNING | \
+ RTEMS_RTL_TRACE_LOAD | \
+ RTEMS_RTL_TRACE_UNLOAD | \
+ RTEMS_RTL_TRACE_SYMBOL | \
+ RTEMS_RTL_TRACE_RELOC | \
+ RTEMS_RTL_TRACE_ALLOCATOR | \
+ RTEMS_RTL_TRACE_UNRESOLVED | \
+ RTEMS_RTL_TRACE_ARCHIVES | \
+ RTEMS_RTL_TRACE_GLOBAL_SYM | \
+ RTEMS_RTL_TRACE_DEPENDENCY)
+ #define DL_DEBUG_TRACE DEBUG_TRACE /* RTEMS_RTL_TRACE_ALL */
+#else
+ #define DL_DEBUG_TRACE 0
+#endif
+
int dl_load_test(void)
{
void* handle;
@@ -34,7 +52,9 @@ int dl_load_test(void)
bool throw_runtime = true;
#endif
- rtems_rtl_trace_set_mask(RTEMS_RTL_TRACE_ALL);
+#if DL_DEBUG_TRACE
+ rtems_rtl_trace_set_mask (DL_DEBUG_TRACE);
+#endif
handle = dlopen("/dl05-o5.o", RTLD_GLOBAL | RTLD_NOW);
if (handle == NULL)