diff options
-rw-r--r-- | ldso/ldso/arc/dl-sysdep.h | 72 | ||||
-rw-r--r-- | ldso/ldso/arc/elfinterp.c | 4 |
2 files changed, 38 insertions, 38 deletions
diff --git a/ldso/ldso/arc/dl-sysdep.h b/ldso/ldso/arc/dl-sysdep.h index 6e2e47c0d..97ce28492 100644 --- a/ldso/ldso/arc/dl-sysdep.h +++ b/ldso/ldso/arc/dl-sysdep.h @@ -14,43 +14,43 @@ /* * Dynamic Linking ABI for ARCompact ISA * - * PLT - * -------------------------------- - * | ld r11, [pcl, off-to-GOT[1] | 0 (20 bytes) - * | | 4 - * plt0 | ld r10, [pcl, off-to-GOT[2] | 8 - * | | 12 - * | j [r10] | 16 - * -------------------------------- - * | Base address of GOT | 20 - * -------------------------------- - * | ld r12, [pcl, off-to-GOT[3] | 24 (12 bytes each) - * plt1 | | - * | j_s.d [r12] | 32 - * | mov_s r12, pcl | 34 - * -------------------------------- - * | | 36 - * ~ ~ - * ~ ~ - * | | - * -------------------------------- + * PLT + * -------------------------------- + * | ld r11, [pcl, off-to-GOT[1] | 0 (20 bytes) + * | | 4 + * plt0 | ld r10, [pcl, off-to-GOT[2] | 8 + * | | 12 + * | j [r10] | 16 + * -------------------------------- + * | Base address of GOT | 20 + * -------------------------------- + * | ld r12, [pcl, off-to-GOT[3] | 24 (12 bytes each) + * plt1 | | + * | j_s.d [r12] | 32 + * | mov_s r12, pcl | 34 + * -------------------------------- + * | | 36 + * ~ ~ + * ~ ~ + * | | + * -------------------------------- * - * GOT - * -------------- - * | [0] | - * -------------- - * | [1] | Module info - setup by ldso - * -------------- - * | [2] | resolver entry point - * -------------- - * | [3] | - * | ... | Runtime address for function symbols - * | [f] | - * -------------- - * | [f+1] | - * | ... | Runtime address for data symbols - * | [last] | - * -------------- + * GOT + * -------------- + * | [0] | + * -------------- + * | [1] | Module info - setup by ldso + * -------------- + * | [2] | resolver entry point + * -------------- + * | [3] | + * | ... | Runtime address for function symbols + * | [f] | + * -------------- + * | [f+1] | + * | ... | Runtime address for data symbols + * | [last] | + * -------------- */ /* diff --git a/ldso/ldso/arc/elfinterp.c b/ldso/ldso/arc/elfinterp.c index 1d4481c6f..ca0d2c16f 100644 --- a/ldso/ldso/arc/elfinterp.c +++ b/ldso/ldso/arc/elfinterp.c @@ -59,7 +59,7 @@ _dl_linux_resolver(struct elf_resolve *tpnt, unsigned int plt_pc) #if defined __SUPPORT_LD_DEBUG__ if (_dl_debug_bindings) { _dl_dprintf(_dl_debug_file, "\nresolve function: %s", symname); - if(_dl_debug_detail) + if (_dl_debug_detail) _dl_dprintf(_dl_debug_file, "\n\tpatched %x ==> %pc @ %pl\n", *got_addr, new_addr, got_addr); } @@ -182,7 +182,7 @@ _dl_do_lazy_reloc(struct elf_resolve *tpnt, struct r_scope_elem *scope, } #if defined __SUPPORT_LD_DEBUG__ - if(_dl_debug_reloc && _dl_debug_detail) + if (_dl_debug_reloc && _dl_debug_detail) _dl_dprintf(_dl_debug_file, "\tpatched: %lx ==> %lx @ %pl\n", old_val, *reloc_addr, reloc_addr); #endif |