Mike Hommey
f340ab735e
Bug 1423821 - Add a consistency check for section offsets to elfhack. r=froydnj
...
lld is being too smart for its own good, and places non-relocatable data
right after the program headers, which prevents the program headers from
growing. But elfhack wasn't checking for that, so happily placed the
non-relocatable data at its non-relocated location, overwriting the last
item of the program headers.
2017-12-07 15:34:58 +09:00
Mike Hommey
2c2487eb56
Bug 1378986 - Adjust the fake phdr section properly. r=froydnj
...
The PT_PHDR segment is optional, but the Android toolchain decides to
create one in some cases, and places it first. When that happens, the
work around for bug 1233963 fails, because the fake phdr section has not
been adjusted yet (it only happens when we see a PT_LOAD).
So we adjust the fake phdr section when we see a PT_PHDR segment (and
avoid re-updating it when we see a subsequent PT_LOAD).
2017-07-07 18:29:06 +09:00
Mike Hommey
45de988f32
Bug 1233963 - Work around recent GNU gold behavior with segments starting before the first section they contain. r=froydnj
2016-01-21 13:54:03 +09:00
Birunthan Mohanathas
c3c0be5691
Bug 784739 - Switch from NULL to nullptr in build/; r=ehsan
2013-11-11 14:13:38 -05:00
Mike Hommey
b46fe65004
Bug 654087 - Don't error out on gold special treatment of PT_TLS segment memsize. r=nfroyd
2013-01-16 09:15:07 +01:00
Mike Hommey
943edeb1af
Bug 822584 - Workaround in elfhack to accomodate for breakpad not handling the memory mapping induced by the elfhack/bionic linker combination. r=nfroyd
2013-01-02 10:17:32 +01:00
Mike Hommey
7c56034a36
Bug 816494 part 4 - Add a -r option to elfhack that re-merges the split PT_LOADs. r=nfroyd
...
Sections are positioned accordingly, which means the resulting ELF binary will
have a big gap full of zero between .rel.plt and .plt.
2012-12-10 10:33:08 +01:00
Mike Hommey
082d88f5c0
Bug 816494 part 2 - Move the PT_LOAD splitting logic in elfhack.cpp. r=nfroyd
...
Also, section offsets are not adjusted until the split is done.
2012-12-10 10:33:08 +01:00
Mike Hommey
aa4e4df82a
Bug 716295 part 4 - Interpose elfhack injected code in DT_INIT_ARRAY's first entry when possible. r=nfroyd
2012-08-09 16:34:25 +02:00
Mike Hommey
7d483a00eb
Bug 716295 part 1 - Fail more gracefully when .dynamic section can't be grown. r=nfroyd
2012-08-09 16:34:24 +02:00
Gervase Markham
cb6a072c2a
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Mike Hommey
21a0f2d6a4
Bug 725284 - Preserve PT_LOAD alignment, except when it's the default on x86-64. r=tglek
2012-02-21 08:08:41 +01:00
Mike Hommey
312ece81e0
Bug 674888 - Allow elfhack to move .interp sections. r=tglek
2011-08-03 10:28:47 +02:00
Mike Hommey
d0d08e1e9d
Bug 651892 part 1 - Add a helper function to lookup symbols in a ElfSymtab_Section. r=tglek
2011-06-23 04:07:30 +02:00
Mike Hommey
08316d02a6
Bug 649965 - Remove inlines on Elf_*::swap functions. r=tglek
2011-06-03 01:21:07 +02:00
Mike Hommey
2281db190b
Bug 629635 part 4 - Make elfhack keep PT_GNU_RELRO segments as they were originally. r=tglek,a=blocking2.0:final
2011-02-12 10:28:34 +01:00
Mike Hommey
1af1ff2225
Bug 629635 part 3 - Add ElfSegment::getOffset and ElfSegment::getAddr functions. r=tglek,a=blocking2.0:final
2011-02-12 10:28:34 +01:00
Mike Hommey
580a954b71
Bug 629635 part 1 - Make elfhack fail if different blocks need to be mapped to the same address. r=tglek,a=blocking2.0:final
2011-02-12 10:28:26 +01:00
Mike Hommey
05a7564b8a
Bug 628988 part 2 - Adapt symbol tables content to elfhack changes. r=tglek,a=sdwilsh
2011-01-28 09:22:58 +01:00
Mike Hommey
76a85c56b6
Bug 628627 part 1 - Raise hard errors in some more cases in elfhack. r=tglek,a=sdwilsh
2011-01-28 09:22:58 +01:00
Mike Hommey
75f3f59209
Bug 628618 part 6 - Delay refreshing of ElfSection addresses and offsets. r=tglek,a=sdwilsh
2011-01-28 09:22:58 +01:00
Mike Hommey
a1a52c7d80
Bug 628618 part 5 - Don't set DT_REL*COUNT if it wasn't already set. r=tglek,a=sdwilsh
2011-01-28 09:22:58 +01:00
Mike Hommey
0c9e2a4789
Bug 628618 part 4 - Initially set an address for the fake phdr ElfSection. r=tglek,a=sdwilsh
2011-01-28 09:22:58 +01:00
Mike Hommey
ca497357a4
Bug 628283 - Make elfhack handle GNU_RELRO segments better. r=tglek,a=dbaron
2011-01-24 23:11:46 +01:00
Mike Hommey
4ca328c3c5
Bug 606145 part 2 - Import elfhack code. r=tglek,a=bsmedberg
2011-01-24 09:56:40 +01:00