gecko-dev/build
Mike Hommey ccd43013f6 Bug 1388713 - Change how elfhack looks for the bss section. r=froydnj
In bug 635961, elfhack was made to (ab)use the bss section as a
temporary space for a pointer. To find it, it scanned writable PT_LOAD
segments to find one that has a different file and memory size,
indicating the presence of .bss. This usually works fine, but when
the binary is linked with lld and relro is enabled, the end of the
file-backed part of the PT_LOAD segment containing the .bss section
ends up in the RELRO segment, making that location read-only and
subsequently making the elfhacked binary crash when it tries to restore
the .bss to a clean state, because it's not actually writing in the .bss
section: lld page aligns it after the RELRO segment.

So instead of scanning PT_LOAD segments, we scan for SHT_NOBITS
sections that are not SHF_TLS (i.e. not .tbss).

--HG--
extra : rebase_source : f18c43897fd0139aa8535f983e13eb785088cb18
2017-08-10 07:55:55 +09:00
..
annotationProcessors Bug 1352177 - 2. Introduce new config file format for SDK bindings; r=snorp 2017-05-03 11:36:18 -04:00
autoconf Backed out changeset 514cf1f55c6f (bug 1380639) 2017-08-07 13:23:35 +02:00
build-clang Bug 1386588 - Always print out the commands run by the clang build job. r=gps,a=KWierso 2017-08-03 08:14:02 +09:00
clang-plugin Bug 1374024 - apply clang-format on some files from static analysis. r=mystor 2017-07-13 12:00:06 +02:00
compare-mozconfig
docs bug 1370506, update the docs, r=glandium 2017-06-16 13:14:28 +02:00
macosx Bug 1382525 - Move LLVM_CONFIG out of mozconfig.common. r=chmanchester 2017-07-20 14:06:23 +09:00
mobile Bug 1373256 - Changes to support -fsanitize=integer in the codebase. r=froydnj 2017-04-09 12:59:26 +02:00
moz.configure Bug 1336978 - Add support of lld by adding a configure option --enable-linker='bfd', 'gold', 'lld', 'other' r=glandium 2017-07-26 15:14:07 +02:00
package/mac_osx
pgo Bug 1346405 - Update build/pgo/certs/README so instructions are current and applicable cross-platform r=ted 2017-03-10 14:06:49 -08:00
pymake
release
sanitizers Bug 1363976 - Suppress global_style_data for LSAN. r=bholley 2017-08-07 19:55:51 -05:00
unix Bug 1388713 - Change how elfhack looks for the bss section. r=froydnj 2017-08-10 07:55:55 +09:00
util Bug 1338210 - Set threshold for num_static_constructor alerts to 3 r=jmaher 2017-03-10 13:53:08 -05:00
valgrind Bug 1370366 - Remove valgrind.sh. r=njn 2017-06-06 06:29:14 +09:00
win32 bug 1318143 - add support for detecting Visual Studio 2017 to configure. r=gps 2017-04-26 15:18:48 -04:00
win64 Bug 1361256 part 2 - Avoid mozconfig failures when clang-cl has't been downloaded yet. r=glandium 2017-05-15 11:38:41 +08:00
__init__.py
.gdbinit_python.in Bug 1346025 - Move vendored python modules from /python to /third_party/python, r=ted 2017-05-25 11:48:03 -04:00
.lldbinit.in
appini_header.py
application.ini.in
automation-build.mk
automation.py.in Bug 1359288 - Enable Android reftest to resume from crashes. r=jmaher 2017-05-10 10:38:48 +08:00
binary-location.mk
buildconfig.py Bug 1316879 - Don't use CPP/CXXCPP from environment after bug 1299919. r=glandium 2017-02-23 22:01:18 +00:00
cargo-linker Bug 1329737 - part 3 - use an alternate linker for Cargo invocations; r=rillian 2017-04-28 14:06:41 -04:00
checksums.py
defines.sh
dumbmake-dependencies Bug 1363533 - Move nsIJSInspector from devtools/server/ to devtools/platform/. r=gps,jryans 2017-05-15 18:53:19 +02:00
gecko_templates.mozbuild Bug 1370695 - Remove build system code handling binary components. r=glandium 2017-06-13 16:01:45 -07:00
gen_test_backend.py Bug 1345109 - Delete 'JS_STANDALONE' from EmptyConfig when generating test metadata, r=mshal 2017-03-07 10:56:22 -05:00
gen_test_packages_manifest.py Bug 1272113: Packaging awsy in build job r=jmaher 2017-03-11 02:33:19 +08:00
genrc.sh
gyp_base.mozbuild Bug 1357323 - Remove support for gonk in the build system. r=gps 2017-04-18 16:56:09 +09:00
gyp.mozbuild Bug 1384655 - Backed out changeset 7829ceaaec31 for busting gUM on some configurations. 2017-08-08 09:50:07 +02:00
mach_bootstrap.py Bug 1382775 - Move testing/tools/autotry to tools/tryselect/selectors/syntax.py, r=chmanchester 2017-07-17 21:36:23 -04:00
Makefile.in
moz-automation.mk Bug 1337986 - Remove dependencies between packaging steps and buildsymbols. r=mshal,ted 2017-04-10 10:27:50 -07:00
moz.build Bug 1333003 part 4 - Package the binary of llvm-symbolizer also on Windows. r=ted 2017-03-10 12:24:02 +08:00
mozconfig.artifact Bug 1373150 - Disable compile environment on l10n builds. r=Callek 2017-06-15 15:06:45 +09:00
mozconfig.automation
mozconfig.cache Bug 1382502 - Enable sccache on PGO builds. r=ted 2017-07-20 11:31:14 +09:00
mozconfig.clang-cl Bug 1343713 - Avoid mozconfig failures when clang-cl/msvc are not present. r=ted 2017-03-01 11:10:14 +09:00
mozconfig.common Bug 1382502 - Include mozconfig.cache in most cases. r=ted 2017-07-20 11:07:53 +09:00
mozconfig.common.override
mozconfig.no-compile Bug 1384786 - Fix try artifact builds after bug 1382502. r=gps 2017-07-27 14:02:39 +09:00
mozconfig.rust Bug 1261841 part 5 - Enable explicit SIMD in Rust in automation infra. r=froydnj. 2017-06-13 13:24:54 +03:00
mozconfig.stylo Bug 1384258 - Build Stylo by default. r=chmanchester 2017-07-25 14:29:52 -07:00
mozconfig.vs-common
mozconfig.win-common
prebuilt-interfaces.manifest
qemu-wrap
rebuild-backend.mk
sccache.mk Bug 1380964 - Get and upload useful sccache logs. r=gps 2017-07-14 09:46:38 +09:00
subconfigure.py Bug 1369292 - Avoid running config.status in js/src. r=mshal 2017-06-02 16:39:55 +09:00
submit_telemetry_data.py Bug 1346025 - Move vendored python modules from /python to /third_party/python, r=ted 2017-05-25 11:48:03 -04:00
telemetry-schema.json
templates.mozbuild Bug 1377970 - add -llog for Android in moz.build; r=chmanchester 2017-07-05 09:32:30 -04:00
test_templates.mozbuild
update-settings.ini
upload.py Bug 1147271 - Add ssh option to prevent hanging on password prompt in upload.py r=mshal 2017-05-11 09:40:58 -07:00
variables.py
virtualenv_packages.txt Bug 1328727: vendor json-e 2.1.1; r=jonasfj 2017-07-21 16:12:25 +00:00
windows_toolchain.py