I’m porting a large vxWorks application and I’m trying to download “ld -r” files as you can on vxWorks using the run-time loader. At least on ARM I can’t get it to work, it uses the first local address it sees for all occurrences.
Example: Label .LC2 is used in two places, once for the “r” in an fopen() and later for a format string. In both cases the address used is 0x419f14, the address of “r”. First is the readelf output, then the disassembly, then debugging output from the RTL. FIRST OCCURRENCE OF .LC2 used as “r” in fopen() readelf: 00000020 0000152f R_ARM_THM_MOVW_ABS_NC 00000008 .LC1 00000024 00001530 R_ARM_THM_MOVT_ABS 00000008 .LC1 0000002a 0000162f R_ARM_THM_MOVW_ABS_NC 0000002c .LC2 0000002e 00001630 R_ARM_THM_MOVT_ABS 0000002c .LC2 00000034 0000450a R_ARM_THM_CALL 00000000 fopen Disassemble: if ((fd = fopen(string, "r")) == (0)) { 2a: f240 0100 movw r1, #0 2e: f2c0 0100 movt r1, #0 32: 6878 ldr r0, [r7, #4] 34: f7ff fffe bl 0 <fopen> RTL: rtl: THM_MOVT_ABS/THM_MOVW_ABS_NC 0x341f2c0 @ 0x4196dc in bad rtl: rel: sym:.LC2(22)=00419f14 type:47 off:0000002a rtl: THM_MOVT_ABS/THM_MOVW_ABS_NC 0x7114f649 @ 0x4196e2 in bad rtl: rel: sym:.LC2(22)=00419f14 type:48 off:0000002e rtl: THM_MOVT_ABS/THM_MOVW_ABS_NC 0x141f2c0 @ 0x4196e6 in bad rtl: rel: sym:fopen(69)=000d33c1 type:10 off:00000034 SECOND OCCURRENCE of .LC2 used for the printf format string: readelf: 000007a8 00002c2f R_ARM_THM_MOVW_ABS_NC 0000013c .LC2 000007ac 00002c30 R_ARM_THM_MOVT_ABS 0000013c .LC2 000007b0 0000330a R_ARM_THM_CALL 00000000 printf Disassemble: 7a6: 68f9 ldr r1, [r7, #12] 7a8: f240 0000 movw r0, #0 7ac: f2c0 0000 movt r0, #0 7b0: f7ff fffe bl 0 <printf> RTL: rtl: rel: sym:.LC2(44)=00419f14 type:47 off:000007a8 rtl: THM_MOVT_ABS/THM_MOVW_ABS_NC 0x7014f649 @ 0x419e60 in /opt/flatland/arch/arm-stubs-vxstubs/bin/sys-bad rtl: rel: sym:.LC2(44)=00419f14 type:48 off:000007ac rtl: THM_MOVT_ABS/THM_MOVW_ABS_NC 0x41f2c0 @ 0x419e64 in /opt/flatland/arch/arm-stubs-vxstubs/bin/sys-bad rtl: rel: sym:printf(51)=000daac9 type:10 off:000007b0 Peter ----------------- Peter Dufault HD Associates, Inc. Software and System Engineering This email is delivered through the public internet using protocols subject to interception and tampering. _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel