Prior to this change the loader self relocation code interpreted amd64's rela relocations as if they were rel relocations, discarding the addend. This "worked" because GNU ld 2.17.50 stores the addend also at the relocation target, for some reason.
Other linkers, and possibly other versions of GNU ld, don't have this behaviour, so we must interpret relocations correctly.
Reported by: George Rimar