Pavan Thursday, March 22, 2018 2:28 PM
Awesome articals ..
but one quick doubt.
Is your Code compiled? because I see you have
void* hashtab and then try dereference that .. I think in that case you should get the error:
void value not ignored as it ought to be
(I've fixed that, but forgot to reply in Disqus)
Mojes Thursday, January 31, 2019 12:00 PM
Thanks for great article. It helped me a lot.
One thing that took me a day to find is that you should change:
while (chain[ix - symoffset] & 1 == 0) ix++;
to:
while ((chain[ix - symoffset] & 1) == 0) ix++;
C/C++ operator precedence bounds comparison operator tighter than bitwise AND operator. Your version will be optimize out because it's equivalent to while (chain[ix - symoffset] & fasle) ix++;
(I've fixed that, but forgot to reply in Disqus)
flapenguin
changed the title
ELF: better symbol lookup via DT_GNU_HASH
/elf-dt-hash ELF: better symbol lookup via DT_GNU_HASH
Jun 27, 2022
flapenguin
changed the title
/elf-dt-hash ELF: better symbol lookup via DT_GNU_HASH
/elf-dt-gnu-hash ELF: better symbol lookup via DT_GNU_HASH
Jun 27, 2022
https://flapenguin.me/elf-dt-gnu-hash
The text was updated successfully, but these errors were encountered: