gecko-dev/mfbt
Mike Hommey 4a05ff7242 Bug 1844484 - Override the symbol used by compilers in vtables for pure virtual methods. r=firefox-build-system-reviewers,ahochheiden
In bug 1839743, we made the build system prefer packed relative
relocations to elfhack when both the system libc and linker support
them. Unfortunately, while that covers most of the benefits from
elfhack, it doesn't cover bug 651892.

To cover it, we make every C++ executable contain its own copy of
the symbol, so that all relocations related to it become relative.

And because this is actually (slightly) beneficial on macos, and because
it's also an advantage to have our own abort called rather than the
system's, we apply the same to all platforms.

Differential Revision: https://phabricator.services.mozilla.com/D184068
2023-08-02 06:12:51 +00:00
..
double-conversion Bug 1844554 - Vendor double-conversion using `mach vendor` r=RyanVM 2023-07-21 08:12:09 +00:00
lz4 Bug 1845018 - Update xxHash to version 0.8.2. r=dthayer 2023-07-26 16:21:11 +00:00
tests Bug 1843181 - Make EqualRange return a std::pair. r=sergesanspaille 2023-07-14 21:51:27 +00:00
Algorithm.h
Alignment.h
AllocPolicy.h Bug 1571631 - Replace MOZ_MUST_USE with [[nodiscard]] in mfbt. r=sg 2021-03-17 03:01:21 +00:00
AlreadyAddRefed.h Bug 1519636 - Reformat recent changes to the Google coding style r=andi,media-playback-reviewers,necko-reviewers,padenot,dragana 2022-06-07 12:32:55 +00:00
Array.h Bug 1733963 - Part 1: Make BitSet work as storage for EnumSet. r=glandium 2021-11-09 12:34:51 +00:00
ArrayUtils.h
Assertions.cpp Bug 1624717 - Copy release mode bounds checking from nsTArray to Array r=glandium 2021-09-09 13:29:18 +00:00
Assertions.h Bug 1838828 - Fix obsolete comment in Assertions.h: MOZ_RELEASE_ASSERT is no-op only in late beta and release. r=chunmin 2023-07-07 00:51:27 +00:00
AtomicBitfields.h Bug 1701879 part 5 - Add stub atomics implementation for WASI. r=wingo,glandium 2021-04-20 05:15:28 +00:00
Atomics.h Bug 1701879 part 5 - Add stub atomics implementation for WASI. r=wingo,glandium 2021-04-20 05:15:28 +00:00
Attributes.h Bug 1829425 - Rename the ASAN/TSAN blacklist macros. r=decoder 2023-04-24 12:47:00 +00:00
BinarySearch.h Bug 1843181 - Make EqualRange return a std::pair. r=sergesanspaille 2023-07-14 21:51:27 +00:00
BitSet.h Bug 1768632: Make EnumSet compile for MSVC. r=glandium 2022-08-17 06:39:12 +00:00
BloomFilter.h Bug 1828560 - Part 2: Rename BitBloomFilter::mCounters to mBits. r=dpalmeiro 2023-04-19 05:25:09 +00:00
Buffer.h
BufferList.h Bug 1783242 - Part 3: Remove BufferList::Extract, r=glandium,ipc-reviewers,mccr8 2022-09-28 19:25:14 +00:00
Casting.h Bug 1812353 - Update GPUSupportedLimits in webgpu.webidl. r=webgpu-reviewers,webidl,saschanaz,jimb,emilio,smaug 2023-06-12 21:10:11 +00:00
ChaosMode.cpp
ChaosMode.h
Char16.h Bug 1766549 - Remove some char16ptr_t operators that allow implicit const-casting. r=nika 2022-04-27 22:28:24 +00:00
CheckedInt.h Bug 1743012 - Add missing `constexpr` qualifiers in `CheckedInt`, r=glandium 2021-11-26 19:18:49 +00:00
CompactPair.h Bug 1601556 - Make Result<V, E> a literal type if V and E are literal types and PackingStrategy is not Variant. r=emilio 2021-03-23 12:35:19 +00:00
Compiler.h
Compression.cpp
Compression.h Bug 1571631 - Replace MOZ_MUST_USE with [[nodiscard]] in mfbt. r=sg 2021-03-17 03:01:21 +00:00
DbgMacro.h
DebugOnly.h
DefineEnum.h
DoublyLinkedList.h Bug 1777925: Replaced MutationObserver array container type with linked list. r=smaug 2022-09-21 11:31:44 +00:00
EndianUtils.h Bug 1571631 - Replace MOZ_MUST_USE with [[nodiscard]] in mfbt. r=sg 2021-03-17 03:01:21 +00:00
EnumSet.h Bug 1768632: Make EnumSet compile for MSVC. r=glandium 2022-08-17 06:39:12 +00:00
EnumTypeTraits.h
EnumeratedArray.h
EnumeratedRange.h Bug 1812353 - Update GPUSupportedLimits in webgpu.webidl. r=webgpu-reviewers,webidl,saschanaz,jimb,emilio,smaug 2023-06-12 21:10:11 +00:00
FStream.h
FastBernoulliTrial.h
FloatingPoint.cpp Bug 1660405 - Move away from mozilla::IsFinite in favor of std::isfinite. r=sergesanspaille 2023-03-22 11:35:33 +00:00
FloatingPoint.h Bug 1660405 - Transform mozilla::IsNegative to use std implementation. r=glandium 2023-03-22 11:35:36 +00:00
FunctionRef.h
FunctionTypeTraits.h Bug 1277372 - Remove unused "mozilla/TypeTraits.h" r=sergesanspaille 2023-04-17 13:50:11 +00:00
Fuzzing.h Bug 1821008 - Add nyx abort macro and more debug messages. r=truber,glandium 2023-03-14 07:50:36 +00:00
HashFunctions.cpp Bug 1719396: Don't hash sizeof(size_t) in HashBytes r=glandium 2021-07-19 21:35:40 +00:00
HashFunctions.h Bug 1341265 - Part 11: Optimise Set.prototype.has for objects in CacheIR. r=iain 2021-08-10 09:55:22 +00:00
HashTable.h Bug 1821659 - Part 2: Return hash code from ensureHash too r=sfink 2023-03-22 09:53:17 +00:00
HelperMacros.h
InitializedOnce.h Bug 1685679 - Add do_Init function to allow assignment to InitializedOnce variables. r=janv 2021-01-15 11:23:41 +00:00
IntegerRange.h
IntegerTypeTraits.h Bug 1277372 - Remove unused "mozilla/TypeTraits.h" r=sergesanspaille 2023-04-17 13:50:11 +00:00
JSONWriter.cpp
JSONWriter.h Bug 1784812 - JSONWriter may optionally not own its writer - r=canaltinova 2022-08-17 07:07:53 +00:00
JsRust.h
Latin1.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
Likely.h
LinkedList.h Bug 1750791 - Part 1: Add LinkedList::mergeBack and LinkedList::splice. r=glandium 2022-02-24 15:00:27 +00:00
MacroArgs.h
MacroForEach.h
MathAlgorithms.h Bug 1821362 - Replace EuclidGCD by a binary gcd algorithm using intrinsics. r=media-playback-reviewers,alwu 2023-05-24 13:18:41 +00:00
Maybe.h Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato 2022-08-03 16:39:41 +00:00
MaybeOneOf.h Bug 1766276 - Give MaybeOneOf a map method r=jandem 2022-04-26 12:29:24 +00:00
MaybeStorageBase.h Bug 1700336 - Use MaybeStorageBase in Maybe. r=emilio 2021-03-24 13:21:31 +00:00
MemoryChecking.h
MemoryReporting.h
MoveOnlyFunction.h Bug 1743020 - Part 3: Export mozilla::MoveOnlyFunction based on function2, r=glandium 2022-06-02 13:24:10 +00:00
MruCache.h Bug 1815396 - Fix documentation of MruCache. r=lsalzman 2023-03-06 10:43:27 +00:00
NonDereferenceable.h
NotNull.h Bug 1607634 - Part 1: Improve the ergonomics of using NotNull with RefPtr and nsCOMPtr, r=glandium 2023-03-20 15:40:35 +00:00
Opaque.h
OperatorNewExtensions.h
PairHash.h Bug 1571631 - Replace MOZ_MUST_USE with [[nodiscard]] in mfbt. r=sg 2021-03-17 03:01:21 +00:00
Path.h
PodOperations.h
Poison.cpp Bug 1701620 part 4 - Fix memory support for WASI. r=jandem,sfink 2021-04-13 08:25:10 +00:00
Poison.h
RandomNum.cpp Bug 1816953 - Stop hooking BCryptGenRandom. r=cmartin,handyman 2023-05-03 13:40:36 +00:00
RandomNum.h Bug 1723674 - mfbt: Add new GenerateRandomBytes() function. r=cmartin 2021-10-14 03:28:48 +00:00
Range.h
RangedArray.h
RangedPtr.h
ReentrancyGuard.h
RefCountType.h
RefCounted.h Bug 1843568 - Part 3: Annotate `nsIEventTarget` as rust_sync, r=xpcom-reviewers,barret 2023-07-20 17:39:03 +00:00
RefPtr.h Bug 1607634 - Part 1: Improve the ergonomics of using NotNull with RefPtr and nsCOMPtr, r=glandium 2023-03-20 15:40:35 +00:00
Result.h Bug 1769518 - Support Rooted<Result<V,E>> as long as V and E have GCPolicy<> defined for them. (Use IgnoreGCPolicy for whichever of them does not need tracing.) r=emilio,nbp,jonco 2022-05-26 17:22:35 +00:00
ResultExtensions.h Bug 1732642 - Handle complex types in MOZ_TO_RESULT_INVOKE_MEMBER_TYPED; r=dom-storage-reviewers,jari 2021-11-30 05:05:53 +00:00
ResultVariant.h Bug 1769518 - Support Rooted<Result<V,E>> as long as V and E have GCPolicy<> defined for them. (Use IgnoreGCPolicy for whichever of them does not need tracing.) r=emilio,nbp,jonco 2022-05-26 17:22:35 +00:00
ReverseIterator.h
RollingMean.h Bug 1666487 - Constify some RollingMean getters. r=glandium 2021-02-11 13:38:48 +00:00
SHA1.cpp Bug 1806779 - Fix C++20 -Wdeprecated-volatile warnings in mfbt/SHA1.cpp. r=glandium 2022-12-22 02:58:24 +00:00
SHA1.h
SPSCQueue.h Bug 1830206 - Fix an overly restrictive assertion in the SPSC ringbuffer. r=alwu 2023-05-24 13:11:46 +00:00
STYLE
Saturate.h
ScopeExit.h Bug 1725572 - Part 1: Support move-only closures in ScopeExit, r=glandium 2021-09-23 18:54:31 +00:00
Scoped.h
SegmentedVector.h Bug 1730534 - Part 1: Assert state of SegmentedVector iterator is valid r=mccr8 2021-09-27 16:41:51 +00:00
SharedLibrary.h
SmallPointerArray.h
Span.h Bug 1841314 - Part 3: Prefer JS::NewArrayBufferWithContents with UniquePtr. r=sfink,saschanaz 2023-07-06 20:50:59 +00:00
SplayTree.h
StaticAnalysisFunctions.h Bug 1699844 - Add an escape hatch for the refcounted inside lambda checker. r=andi 2021-04-14 19:12:02 +00:00
TaggedAnonymousMemory.cpp
TaggedAnonymousMemory.h Bug 1701620 part 4 - Fix memory support for WASI. r=jandem,sfink 2021-04-13 08:25:10 +00:00
Tainting.h Bug 1811645 - avoid an American English colloquialism meaning "nonsense" r=Gijs 2023-04-20 22:24:00 +00:00
TemplateLib.h Bug 1679492 - Remove parts that are unused from mfbt/TemplateLib. r=sergesanspaille 2023-04-18 12:42:13 +00:00
TextUtils.h Bug 1795644 - A bit of tuning of inlining in the JS parser. r=arai. 2022-10-18 05:22:03 +00:00
ThreadLocal.h Bug 1701613 part 3 - Add stub thread implementation for WASI. r=jandem,wingo 2021-04-08 08:02:16 +00:00
ThreadSafeWeakPtr.h Bug 1843568 - Part 3: Annotate `nsIEventTarget` as rust_sync, r=xpcom-reviewers,barret 2023-07-20 17:39:03 +00:00
ThreadSafety.h Bug 1797354 - Allow specifying capability type in thread-safety macros, r=jesup,media-playback-reviewers,alwu 2022-10-28 19:55:30 +00:00
ToString.h
TsanOptions.h Bug 1824768 - Add TSan suppressions for external libs. r=decoder 2023-07-07 10:12:54 +00:00
TypedEnumBits.h
Types.h
UniquePtr.h Bug 1782604 - Make UniquePtr(nullptr) constexpr r=glandium 2022-08-03 21:21:09 +00:00
UniquePtrExtensions.cpp
UniquePtrExtensions.h Bug 1834912 - Add iOS-related defines/ifdefs for IPC. r=ipc-reviewers,nika 2023-05-25 02:48:33 +00:00
Unused.cpp
Unused.h
Utf8.cpp
Utf8.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
Variant.h Bug 1719959 - Better Tag type choice, fixed corresponding test - r=emilio 2021-07-11 09:43:50 +00:00
Vector.h Bug 1828784 - Work around VS 2019+ SDK issue. r=glandium 2023-04-19 22:51:46 +00:00
WasiAtomic.h Bug 1758780 - Fallthrough to <atomic> for wasi when using clang >= 14. r=nika 2022-04-13 03:02:24 +00:00
WeakPtr.h
WindowsVersion.h Bug 1774285 - On Windows 11 22H2, flush the Windows clipboard immediately after setting it. r=neildeakin 2022-10-28 14:17:54 +00:00
WrappingOperations.h
XorShift128PlusRNG.h
fallible.h
moz.build Bug 1844484 - Override the symbol used by compilers in vtables for pure virtual methods. r=firefox-build-system-reviewers,ahochheiden 2023-08-02 06:12:51 +00:00