Mike Hommey
3188e8d7ab
Bug 1059797 - Pre-allocate zlib inflate buffers in faulty.lib. r=froydnj
...
Original patch from James Willcox <snorp@snorp.net>
2014-10-28 16:45:17 +09:00
Mike Hommey
c9456870c0
Bug 1082524 - Do not deref null pointers in link_map. r=nfroyd
2014-10-18 09:27:55 +09:00
Mike Hommey
984856dd8c
Fixup for bug 1081034 - Add missing #ifdef to avoid build failure on desktop linux. r=me,npotb,DONTBUILD
2014-10-17 14:09:17 +09:00
Mike Hommey
eb75074fdb
Bug 1081034 part 3 - Resolve libc symbols with our linker. r=nfroyd
...
This allows to resolve weak symbols from some Android device's libc that
dlsym() won't. This is effectively an alternative fix to bug 791419, without
requiring wrapping symbols.
2014-10-16 09:20:14 +09:00
Mike Hommey
9c53800a82
Bug 1081034 part 2 - Move initialization of self_elf to its own separate class. r=nfroyd
...
The new class is kind of like SystemElf, but using our linker's own symbol
resolution. This also adds some initialization from ELF program headers that
weren't done previously for self_elf, as well as registration as for CustomElf
instances.
2014-10-16 09:20:06 +09:00
Mike Hommey
85b47df0cb
Bug 1081034 part 1 - Move GetSymbolPtr, Contains and FindExidx from CustomElf to BaseElf. r=nfroyd
2014-10-16 09:19:46 +09:00
Mike Hommey
84f2c13cef
Bug 1078837 part 2 - Replace IsSystemElf/reinterpret_cast dance with better API. r=nfroyd
2014-10-16 09:19:45 +09:00
Mike Hommey
c39fcc8944
Bug 1078837 part 1 - Move CustomElf::mappable to BaseElf. r=nfroyd
2014-10-16 09:19:45 +09:00
Mike Hommey
eb89afceec
Bug 1083020 - Add a (dummy) stats method to all LibHandles. r=nfroyd
...
While here, avoid doing anything if debug logging is disabled.
2014-10-16 09:19:40 +09:00
Mike Hommey
f431c6c5b5
Bug 1082524 - Initialize link_map. r=nfroyd
...
When a library fails to load with CustomElf before it's registered, the
unregistration that does happen in CustomElf's destructor uses link_map,
so it needs to be initialized.
2014-10-15 14:46:09 +09:00
Mike Hommey
35f933f139
Bug 1080342 - Change how the symbols the flash plugin uses are hooked on Android. r=snorp
...
With bug 1077366, the linker makes the library containing it a fake
LD_PRELOAD. As a consequence, instead of, in the linker itself,
explicitely special-casing the symbols that disappeared in Android 4.4
that the flash plugin uses, it is now possible to use normal symbol
resolution to stubs defined separately in libmozglue.
2014-10-14 07:18:01 +09:00
Mike Hommey
464da0f9c2
Bug 1077384
- Make libmozglue a pseudo-LD_PRELOAD on android. r=nfroyd
...
In order to avoid adding more dlsym overhead than there already is, resolve
symbols directly in the library containing the linker. (GetSymbolPtr is
essentially free ; dlsym makes the system linker compule a ElfHash itself,
and that's quite expensive to do on all symbols)
This also paves the way for direct symbol resolution in all system libraries.
2014-10-07 07:42:18 +09:00
Mike Hommey
2466a02679
Bug 1077135 - Ensure logging initialization for early log messages in the linker. r=nfroyd
2014-10-04 10:31:49 +09:00
Mike Hommey
5331094bbb
Bug 1077135 - Initialize ElfLoader::DebuggerHelper::firstAdded. r=nfroyd
2014-10-04 10:31:38 +09:00
Jim Chen
ead154121a
Bug 1066760 - Redirect mozalloc_abort through Java exception handling; r=snorp
2014-09-24 14:12:54 -04:00
Jim Chen
f3c570c80b
Bug 1066760 - Add base address and fall back to system dladdr in __wrap_dladdr; r=froydnj
2014-09-24 14:12:54 -04:00
Mike Hommey
0060683747
Bug 1059090 - Don't require SOURCES to be set for CPP_UNIT_TESTS and SIMPLE_PROGRAMS. r=mshal
2014-09-03 14:16:37 +09:00
Mike Hommey
ed70c5f377
Bug 1041941 - Use templates for programs, simple programs, libraries and C++ unit tests. r=gps
2014-09-03 14:10:54 +09:00
Mike Hommey
1cf20f37fd
Bug 1036286 - Ensure faulty.lib diverts libc's sigaction instead of a LD_PRELOADed one. r=nfroyd
...
and force-send calls to sigaction from faulty.lib-loaded libraries to the libc.
2014-08-07 02:51:20 +09:00
Mike Hommey
15851645b4
Bug 1036286 - Delay registration of the faulty.lib signal handler until when it's necessary. r=nfroyd
...
It's necessary to delay it because for the second part, we need to call dlopen,
and until recently bionic's linker dead-locked when using dlopen from a static
initializer.
2014-08-07 02:51:03 +09:00
Mike Hommey
1e6fb05108
Bug 1045783 - Move HOST_EXTRA_LIBS to moz.build as HOST_OS_LIBS. r=mshal
2014-08-06 07:26:05 +09:00
Mike Hommey
d9443ec932
Bug 1045783 - Move most OS_LIBS to moz.build and do some related cleanup. r=mshal
2014-08-06 07:25:33 +09:00
Mike Hommey
8c39460da9
Backout changeset 34235900c3a0 (bug 1036286) because it wasn't the right fix.
2014-08-05 16:07:06 +09:00
Mike Hommey
5f6ba110e6
Bug 1043802 - Remove TOOLS_DIRS and TEST_TOOLS_DIRS. r=gps
2014-07-29 08:55:55 +09:00
Mike Hommey
0b4c32ffd7
Bug 1043351 - Build ShowSSEConfig as a C++ unit test after it was forgotten in bug 894941 and move linker tests to avoid conflicts. r=mshal
...
--HG--
rename : mozglue/tests/Makefile.in => mozglue/linker/tests/Makefile.in
rename : mozglue/tests/TestZip.cpp => mozglue/linker/tests/TestZip.cpp
rename : mozglue/tests/moz.build => mozglue/linker/tests/moz.build
rename : mozglue/tests/no_central_dir.zip => mozglue/linker/tests/no_central_dir.zip
rename : mozglue/tests/test.zip => mozglue/linker/tests/test.zip
2014-07-25 07:14:21 +09:00
Jeff Walden
ec20cc707d
Bug 1037100 - Remove all use of ScopedDeleteArray from mozglue/. r=glandium
...
--HG--
extra : rebase_source : dbc49be874fd57130f33584892589c180c7d1128
2014-07-21 18:14:11 -04:00
Mike Hommey
1e14ec2f14
Bug 1036286 - Make sure libraries loaded by faulty.lib use its own sigaction. r=nfroyd
...
Android L added a libsigchain library it LD_PRELOADs. That library exposes
a different sigaction than libc's. It's used for ART.
faulty.lib gets its sigaction from libsigchain, but after bug 874708, the
libraries it loads simply use libc's sigaction, assuming it would be the
hooked one. In turn, this means libraries loaded by faulty.lib may
override faulty.lib's handler, which is definitely not the intent.
This essentially restores some of the code that bug 874708 removed.
An alternative fix would be to add support for LD_PRELOAD, but that has more
implications and feels more risky. This could be done, if necessary, as a
followup.
2014-07-24 13:43:56 +09:00
Mike Hommey
8e037642dc
Bug 1036894
part 7 - Move HOST_LIBS to moz.build, as HOST_USE_LIBS. r=gps
2014-07-23 13:29:50 +09:00
Nicholas Nethercote
2a0942be41
Bug 1036789 - Convert the third quarter of MFBT to Gecko style. r=Ms2ger.
...
--HG--
extra : rebase_source : 668cd394806203ddfa34bd4f226335ff26c846b5
2014-07-10 19:10:17 -07:00
Jeff Walden
8c69dfae30
Bug 953296 - Convert trivial ScopedDelete{Ptr,Array} uses to UniquePtr in mozglue/linker/. (More remain, but they're less trivial to change.) r=glandium
...
--HG--
extra : rebase_source : 7af7ff2daa70ff3aedaac91d3898bcd90a402162
2013-12-30 13:34:54 -06:00
Mike Hommey
f358f3711f
Bug 1024248 - Properly tag linker error/warnings in logcat. r=nfroyd
2014-06-13 08:45:58 +09:00
Robert O'Callahan
7043c985ba
Bug 1006248. Part 1: Add MOZ_EXPORT in various places. r=glandium
...
--HG--
extra : rebase_source : cfe209a412cae28d405eae413415cebb6959072a
2014-05-06 17:26:46 +12:00
Ehsan Akhgari
7257ee5010
Bug 1004564 - Move AtomicRefCounted to mozilla::external and outlaw it in Gecko code; r=froydnj
2014-05-01 14:33:20 -04:00
Douglas Crosher
a33e69853e
Bug 944612 - Guard the ElfLoader sigaction wrapper against the SIGSEGV handler not being installed. r=glandium
2014-03-20 12:35:15 +11:00
Ehsan Akhgari
17f4a32d8b
Bug 976896 - Port STL_FLAGS to moz.build; r=mshal
2014-03-04 19:39:06 -05:00
Ehsan Akhgari
a8a0206da1
Bug 935778 - Part 1: Add RefCountType, a type compatible with nsrefcnt, to MFBT; r=dbaron,froydnj
2014-02-21 14:45:50 -05:00
Ehsan Akhgari
7e41f47adf
Bug 935778 - Part 0.4: Spray even more MOZ_DECLARE_REFCOUNTED_TYPENAME across the tree
2014-02-21 09:11:33 -05:00
Mike Hommey
81d8ff07e9
Bug 956398 - Only support text relocations for libflashplayer.so. r=nfroyd
2014-01-25 07:59:14 +09:00
Mike Hommey
ec7b1e070a
Bug 956398 - Support text relocations in the custom linker. r=nfroyd
2014-01-16 09:13:42 +09:00
James Willcox
8cb44b437e
Bug 935676 - Stub out missing Flash symbols r=glandium
...
--HG--
extra : rebase_source : 7e02a6283a6ee53b3749e1816d4005b238085954
2014-01-15 09:16:33 -06:00
Mike Hommey
2d9ef44f86
Bug 959254 - Make MappableSeekableZStream::ensure mprotect error message more useful for debugging failures. r=nfroyd
2014-01-15 16:21:45 +09:00
Mike Hommey
8fd06cf41b
Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal
2013-11-27 22:55:07 +09:00
Mike Hommey
b32a4ed166
Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
...
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey
682364d535
Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal
2013-11-28 13:08:16 +09:00
Mike Hommey
e80e877ab7
Bug 939044 - Remove most definitions of MODULE. r=mshal
2013-11-19 11:47:39 +09:00
Mike Hommey
dda5b915fe
Bug 939039 - Remove now useless FORCE_STATIC_LIB definitions. r=gps
2013-11-19 11:47:28 +09:00
Mike Hommey
ffe0380912
Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps
2013-11-19 11:47:14 +09:00
Birunthan Mohanathas
c01f63b478
Bug 784739 - Switch from NULL to nullptr in mozglue/linker/; r=ehsan
2013-11-11 14:15:46 -05:00
Mike Hommey
00a70f6f7d
Bug 933120 - Move HOST_PROGRAM and HOST_SIMPLE_PROGRAMS to moz.build. r=gps
2013-11-02 08:44:11 +09:00
Jim Chen
9705613071
Bug 930627 - Implement __gnu_Unwind_Find_exidx in custom linker on ARM. r=glandium
2013-10-31 11:40:32 -04:00