Simplify INTERP logic for better consistency (#84)
authorJosh Stone <cuviper@gmail.com>
Mon, 13 Jun 2016 12:01:25 +0000 (05:01 -0700)
committerBill Williams <wwilliam47@gmail.com>
Mon, 13 Jun 2016 12:01:25 +0000 (07:01 -0500)
commit030131678e0b616573acc93fa1259d415b33765b
tree3b2e062933cc544f88eb6b5ed64b1a9a9d8b727e
parent76a67c5deda2ad6aece58875441510bad86e4685
Simplify INTERP logic for better consistency (#84)

When .interp was in the first page, keep it there like the comment about
FreeBSD requires.  Just shift it for the new PHDR.  But if .interp is
already past the first page, as seen in libc.so for instance, then move
its offset a whole page like we do for every other section.  Then
program headers follow the same logic.

The conditional around startMovingSections and object type is totally
removed, as it did the wrong thing for PIE binaries which otherwise look
like shared libraries.  We now just move all sections except low interp.

Fixes #71.
symtabAPI/src/emitElf.C