Mike Hommey
b54839958c
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).
--HG--
extra : rebase_source : 2190ec2f20ba9d144b8828874f9f8d70dd5ad2f6
2017-07-07 18:29:06 +09:00
Mike Hommey
687d9646b3
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
1bde8d50d8
Bug 784739 - Switch from NULL to nullptr in build/; r=ehsan
2013-11-11 14:13:38 -05:00
Mike Hommey
5f391d02b5
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
82eee42d03
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
943f5b03eb
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
f237cd4109
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
0ab3403918
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
62ef24ad74
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
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Mike Hommey
c3d9ce8c6d
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
a827925ebe
Bug 674888 - Allow elfhack to move .interp sections. r=tglek
2011-08-03 10:28:47 +02:00
Mike Hommey
7eff9066a4
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
5807380164
Bug 649965 - Remove inlines on Elf_*::swap functions. r=tglek
2011-06-03 01:21:07 +02:00
Mike Hommey
80c3bdea1e
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
6b2a02f26f
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
6ed7532810
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
8eb36d7f97
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
4a0181e110
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
b42bea9dc1
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
5aa5d025fd
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
276396ec0a
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
c886f4609d
Bug 628283 - Make elfhack handle GNU_RELRO segments better. r=tglek,a=dbaron
2011-01-24 23:11:46 +01:00
Mike Hommey
82dcf6256c
Bug 606145 part 2 - Import elfhack code. r=tglek,a=bsmedberg
2011-01-24 09:56:40 +01:00