summaryrefslogtreecommitdiffstats
path: root/cpukit/libdl
diff options
context:
space:
mode:
authorRyan Long <ryan.long@oarcorp.com>2022-07-19 11:34:42 -0500
committerJoel Sherrill <joel@rtems.org>2022-07-29 08:32:47 -0500
commit1c6ac88f938f4b135f3bbffc4b19bbc540508c80 (patch)
treec68e32fc884291cf5578695a207a219e7f1221df /cpukit/libdl
parentlibtests/dl*: Bump up the size of CONFIGURE_INIT_TASK_STACK_SIZE (diff)
downloadrtems-1c6ac88f938f4b135f3bbffc4b19bbc540508c80.tar.bz2
cpukit/libdl/rtl-sym.c: Fix increment of variable
In rtems_rtl_symbol_global_add() the loop that gets to the end of the symbol table used "unsigned long" to increment the index for the table. For most architectures this resulted in 4, but with AArch64, it results in 8. This resulted in the symbols being read in wrong. Changing this to void* along with changing the RISC-V specific code for 8 byte pointers in rtems-tools to work independent of the architecture. Updates #4673 Closes #4682
Diffstat (limited to 'cpukit/libdl')
-rw-r--r--cpukit/libdl/rtl-sym.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/cpukit/libdl/rtl-sym.c b/cpukit/libdl/rtl-sym.c
index c29c8c49d6..5c9c3981df 100644
--- a/cpukit/libdl/rtl-sym.c
+++ b/cpukit/libdl/rtl-sym.c
@@ -124,7 +124,7 @@ rtems_rtl_symbol_global_add (rtems_rtl_obj* obj,
return false;
}
++count;
- s += l + sizeof (unsigned long) + 1;
+ s += l + sizeof (void *) + 1;
}
/*