Lines Matching refs:plt
59 * to the offset to the plt entry in %g1 to calculate the plt entry address
63 * the plt entry is rewritten:
96 ! calculate plt relocation entry
136 * Initialize the first plt entry so that function calls go to elf_rtbndr
138 * The first plt entry (PLT0) is:
149 elf_plt_init(void *plt, caddr_t lmp)
151 *((uint_t *)plt + 0) = (unsigned long) M_SAVESP64;
152 *((uint_t *)plt + 4) = M_CALL | (((unsigned long)elf_rtbndr -
153 ((unsigned long)plt)) >> 2);
154 *((uint_t *)plt + 8) = M_NOP;
155 *((uint_t *)plt + 12) = (unsigned long) lmp;
172 st %o0, [%i0] ! Store in plt[0]
176 inc 4, %i0 ! Bump plt to point to plt[1]
178 ! offset from plt[1]
182 st %o4, [%i0] ! Store instruction in plt
185 st %o0, [%i0 + 4] ! Store instruction in plt[2]
187 st %i1, [%i0 + 8] ! Store instruction in plt[3]
398 * After the first call to a plt, elf_bndr() will have determined the true
399 * address of the function being bound. The plt is now rewritten so that
403 * the new plt entry is:
426 st %o3, [%o0 + 8] ! Store instruction in plt[2]
433 st %o3, [%o0 + 4] ! Store instruction in plt[1]