Граф коммитов

2268 Коммитов

Автор SHA1 Сообщение Дата
Chris Peterson f6fdbf028a Bug 1738401 - Remove -Wno-shadow warning suppressions. r=firefox-build-system-reviewers,glandium
-Wshadow warnings are not enabled globally, so these -Wno-shadow suppressions have no effect. I had intended to enable -Wshadow globally along with these suppressions in some directories (in bug 1272513), but that was blocked by other issues.

There are too many -Wshadow warnings (now over 2000) to realistically fix them all. We should remove all these unnecessary -Wno-shadow flags cluttering many moz.build files.

Differential Revision: https://phabricator.services.mozilla.com/D132289
2021-12-01 06:40:04 +00:00
Jan Varga ead7da2d9c Bug 1732642 - Handle complex types in MOZ_TO_RESULT_INVOKE_MEMBER_TYPED; r=dom-storage-reviewers,jari
Differential Revision: https://phabricator.services.mozilla.com/D126785
2021-11-30 05:05:53 +00:00
Jan Varga a7f7389681 Bug 1731969 - Rename ToResultInvoke member function overloads to ToResultInvokeMember; r=dom-storage-reviewers,jari
Differential Revision: https://phabricator.services.mozilla.com/D126328
2021-11-30 05:05:53 +00:00
Jan Varga 0115137758 Bug 1731969 - Rename ToResultInvokeMemberFunction to ToResultInvokeMemberInternal; r=dom-storage-reviewers,jari
Differential Revision: https://phabricator.services.mozilla.com/D126327
2021-11-30 05:05:52 +00:00
Nika Layzell b2dc7057a5 Bug 1743012 - Add missing `constexpr` qualifiers in `CheckedInt`, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D132173
2021-11-26 19:18:49 +00:00
Christian Holler 6110156f18 Bug 1738278 - Add fuzzing snapshot API. r=truber,firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D129823
2021-11-25 11:20:43 +00:00
Nika Layzell 972727feaa Bug 1734735 - Part 2: Support getter_Transfers with non-pointer UniquePtr types, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D128211
2021-11-23 16:15:21 +00:00
Nika Layzell 47ec9bbc3e Bug 1734735 - Part 1: Add UniqueMach{Send,Recv}Right types, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D128210
2021-11-23 16:15:20 +00:00
Jonathan Kew 1690055f4e Bug 1742115 - Fix UnsafeConvertValidUtf8toUtf16 to wrap the correct Rust implementation. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D131645
2021-11-19 18:57:44 +00:00
Jan Varga 17ccc040dd Bug 1731806 - Allow ToResultInvoke to return other nsresult like error types; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D126273
2021-11-12 11:56:02 +00:00
Andreas Farre 4cf077692f Bug 1733963 - Part 2: Add BitSet tests. r=glandium
Depends on D127447

Differential Revision: https://phabricator.services.mozilla.com/D127448
2021-11-09 12:34:51 +00:00
Andreas Farre f31ef6faa9 Bug 1733963 - Part 1: Make BitSet work as storage for EnumSet. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D127447
2021-11-09 12:34:51 +00:00
Marian-Vasile Laza 7241c1f9e9 Backed out 3 changesets (bug 1733963) for causing build bustages on TestEnumSet.cpp. CLOSED TREE
Backed out changeset 83b804a449c2 (bug 1733963)
Backed out changeset 434e10a0c39a (bug 1733963)
Backed out changeset d7d88b948f71 (bug 1733963)
2021-11-08 19:42:46 +02:00
Andreas Farre e7ee97fb29 Bug 1733963 - Part 2: Add BitSet tests. r=glandium
Depends on D127447

Differential Revision: https://phabricator.services.mozilla.com/D127448
2021-11-08 16:01:26 +00:00
Andreas Farre 5de97dac8c Bug 1733963 - Part 1: Make BitSet work as storage for EnumSet. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D127447
2021-11-08 16:01:25 +00:00
Marian-Vasile Laza fca6bc6241 Backed out 3 changesets (bug 1733963) for causing build bustages on SyncedContext.h. CLOSED TREE
Backed out changeset de5c7a16378c (bug 1733963)
Backed out changeset f5f3a27abf60 (bug 1733963)
Backed out changeset cc3a0603f88a (bug 1733963)
2021-11-05 20:54:33 +02:00
Andreas Farre 694649bec3 Bug 1733963 - Part 2: Add BitSet tests. r=glandium
Depends on D127447

Differential Revision: https://phabricator.services.mozilla.com/D127448
2021-11-05 17:23:02 +00:00
Andreas Farre 2dbbc3ad0e Bug 1733963 - Part 1: Make BitSet work as storage for EnumSet. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D127447
2021-11-05 17:23:01 +00:00
Gabriele Svelto b49d7a0b90 Bug 1722208 - Fix automatically displaying the on-screen keyboard on Windows 11 when running on convertible slates r=cmartin
This fix simply ignores tablet mode when running on Windows 11. The
reasoning behind this is that per Microsoft documentation tablet mode
is specific to Windows 10 and not supported anymore on Windows 11. This
seems consistent in the behavior of the APIs we use to detect the
presence of a keyboard: Windows 10-specific APIs return unexpected
results while APIs that predate them return values that seem consistent
and reliable.

Differential Revision: https://phabricator.services.mozilla.com/D128229
2021-10-28 21:08:12 +00:00
Paul Bone 1b721fc414 Bug 1735715 - Handle gMaxSubPageClass == 0 properly r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D128448
2021-10-21 06:03:45 +00:00
Alexandru Michis fea1e1a0c7 Backed out changeset 539230e86e11 (bug 1722208) for causing windows to get stuck in tablet mode on Windows 11 - no minimize and maximize buttons (bug 1735961)
CLOSED TREE
2021-10-15 18:32:49 +03:00
Gabriele Svelto ced1ed1d25 Bug 1722208 - Workaround to make the Windows on-screen keyboard work properly on convertible slates running Windows 11 r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D128229
2021-10-14 08:30:32 +00:00
Chris Peterson 3846a747b0 Bug 1723674 - mfbt: Add new GenerateRandomBytes() function. r=cmartin
Generalize RandomUint64() into a new GenerateRandomBytes() function, which will be used in the next changeset to replace nsUUIDGenerator's various platform-specific implementations with one simple implementation.

Differential Revision: https://phabricator.services.mozilla.com/D124311
2021-10-14 03:28:48 +00:00
Jan Varga ae30add3b8 Bug 1731801 - Allow ToResult to return other nsresult like error types; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D126270
2021-10-11 08:34:01 +00:00
Jon Coppeard 4055d681e6 Bug 1730534 - Part 1: Assert state of SegmentedVector iterator is valid r=mccr8
The next patches remove elements from a segmented vector that is being
iterated. This patch adds assertions to ensure that we don't attempt to use an
iterator that points to a removed element.

The assertions are added to Done() because all the other methods call that.

Differential Revision: https://phabricator.services.mozilla.com/D125426
2021-09-27 16:41:51 +00:00
Nika Layzell a67a90d1c3 Bug 1725572 - Part 1: Support move-only closures in ScopeExit, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D125895
2021-09-23 18:54:31 +00:00
Marian-Vasile Laza 248c0cd8b6 Backed out 4 changesets (bug 1730534) for conflicts with backout of bug 1536061. a=backout
Backed out changeset fc881c57d119 (bug 1730534)
Backed out changeset 0f72a8c5f8c5 (bug 1730534)
Backed out changeset 007cbeea4325 (bug 1730534)
Backed out changeset 83d53ed76e0f (bug 1730534)
2021-09-20 13:21:23 +03:00
Jon Coppeard 7ad0c5ec32 Bug 1730534 - Part 1: Assert state of SegmentedVector iterator is valid r=mccr8
The next patches remove elements from a segmented vector that is being
iterated. This patch adds assertions to ensure that we don't attempt to use an
iterator that points to a removed element.

The assertions are added to Done() because all the other methods call that.

Differential Revision: https://phabricator.services.mozilla.com/D125426
2021-09-17 06:33:08 +00:00
Tyson Smith d8f7c11471 Bug 1725008 - Implement FuzzingFunctions.crash() r=glandium,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D125000
2021-09-15 18:24:04 +00:00
Chris Peterson 339c7d8961 Bug 1729598 - Remove now-unused MustUseChecker and MOZ_MUST_USE_TYPE attribute. r=static-analysis-reviewers,andi
Depends on D125504

Differential Revision: https://phabricator.services.mozilla.com/D125505
2021-09-15 05:10:51 +00:00
Chris Peterson c9530ebe28 Bug 1729598 - Replace MOZ_MUST_USE_TYPE with [[nodiscard]]. r=static-analysis-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D125504
2021-09-15 05:10:51 +00:00
Daniel Holbert 8761eb8cee Bug 1730774 part 1: Give EnumeratedRange.h an include for Assertions.h, since it includes MOZ_ASSERT statements. r=TYLin
Without this patch, these MOZ_ASSERT statements cause build errors, if I build
the layout/generic directory in non-unified mode.

(Instead of this patch, we could also hypothetically sprinkle individual
#includes for Assertions.h around to all the downstream files; but it's simpler
and more direct to just put it here in the file that contains the MOZ_ASSERT
statements in question. Note that many other MFBT headers also have includes
for Assertions.h, so it seems reasonable to include it here as well.)

Differential Revision: https://phabricator.services.mozilla.com/D125610
2021-09-14 22:06:22 +00:00
Jesse Schwartzentruber 512463417e Bug 1624717 - Copy release mode bounds checking from nsTArray to Array r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D124833
2021-09-09 13:29:18 +00:00
Andi-Bogdan Postelnicu 2fc4f70e9b Bug 1725145 - Preparation for the hybrid build env. r=necko-reviewers,firefox-build-system-reviewers,valentin,glandium
Automatically generated path that adds flag `REQUIRES_UNIFIED_BUILD = True` to `moz.build`
when the module governed by the build config file is not buildable outside on the unified environment.

This needs to be done in order to have a hybrid build system that adds the possibility of combing
unified build components with ones that are built outside of the unified eco system.

Differential Revision: https://phabricator.services.mozilla.com/D122345
2021-08-25 10:46:17 +00:00
André Bargull dca8370c53 Bug 1341265 - Part 11: Optimise Set.prototype.has for objects in CacheIR. r=iain
Inline `Set.prototype.has` in CacheIR when called with objects.

Implementing `MacroAssembler::hashObject()` on 32-bit platforms is difficult,
because it uses 64-bit operations, so we either have to allocate twice as much
registers for `Register64` or alternatively spill the values on the stack. For
now just punt and only support this optimisation on 64-bit platforms.

Differential Revision: https://phabricator.services.mozilla.com/D118977
2021-08-10 09:55:22 +00:00
André Bargull fc13c8d5c1 Bug 1341265 - Part 1: Remove stale fixme comment. r=iain
Bug 775896 has been fixed, so we can remove the fixme comment.

Differential Revision: https://phabricator.services.mozilla.com/D118967
2021-08-10 09:55:18 +00:00
Narcis Beleuzu ca6769529e Backed out 22 changesets (bug 1341265) for bustages on VMFunctions.cpp . CLOSED TREE
Backed out changeset d21b307ccfaf (bug 1341265)
Backed out changeset 182be3b078d9 (bug 1341265)
Backed out changeset 684915d2fc1c (bug 1341265)
Backed out changeset 7b187e896bef (bug 1341265)
Backed out changeset 1f7646c44496 (bug 1341265)
Backed out changeset ed9ca5806dbc (bug 1341265)
Backed out changeset b1db78c1508a (bug 1341265)
Backed out changeset 63d0d4dc2972 (bug 1341265)
Backed out changeset 77d1207af1c0 (bug 1341265)
Backed out changeset d24cb3906dda (bug 1341265)
Backed out changeset 6f1d162738b4 (bug 1341265)
Backed out changeset 186a7d8db816 (bug 1341265)
Backed out changeset e5f6eb92c12c (bug 1341265)
Backed out changeset 46f05b533e75 (bug 1341265)
Backed out changeset 77735582aefb (bug 1341265)
Backed out changeset 3c94f61e57ca (bug 1341265)
Backed out changeset cab9608e9d98 (bug 1341265)
Backed out changeset 08768e69a817 (bug 1341265)
Backed out changeset df7c4fac5dc8 (bug 1341265)
Backed out changeset f1c40722a50e (bug 1341265)
Backed out changeset 2b174465dea5 (bug 1341265)
Backed out changeset 602b65bfb721 (bug 1341265)
2021-08-10 11:27:51 +03:00
André Bargull 867b1e4662 Bug 1341265 - Part 11: Optimise Set.prototype.has for objects in CacheIR. r=iain
Inline `Set.prototype.has` in CacheIR when called with objects.

Implementing `MacroAssembler::hashObject()` on 32-bit platforms is difficult,
because it uses 64-bit operations, so we either have to allocate twice as much
registers for `Register64` or alternatively spill the values on the stack. For
now just punt and only support this optimisation on 64-bit platforms.

Differential Revision: https://phabricator.services.mozilla.com/D118977
2021-08-10 07:45:34 +00:00
André Bargull f506795ec1 Bug 1341265 - Part 1: Remove stale fixme comment. r=iain
Bug 775896 has been fixed, so we can remove the fixme comment.

Differential Revision: https://phabricator.services.mozilla.com/D118967
2021-08-10 07:45:30 +00:00
Butkovits Atila c5ea1e4659 Backed out 21 changesets (bug 1341265) for causing Bug 1724298. CLOSED TREE
Backed out changeset ad0987b840c1 (bug 1341265)
Backed out changeset c3094bf07295 (bug 1341265)
Backed out changeset 199d9708682d (bug 1341265)
Backed out changeset 991572f50cf9 (bug 1341265)
Backed out changeset bf631916de9b (bug 1341265)
Backed out changeset 5d9d8af2f4ac (bug 1341265)
Backed out changeset 720032f06c94 (bug 1341265)
Backed out changeset 85f8b1c24e9d (bug 1341265)
Backed out changeset 13da03ae88a8 (bug 1341265)
Backed out changeset 6716962a06ed (bug 1341265)
Backed out changeset 26787054e0db (bug 1341265)
Backed out changeset 21199bd4965d (bug 1341265)
Backed out changeset bd5e0950f9d9 (bug 1341265)
Backed out changeset 3fa14377770a (bug 1341265)
Backed out changeset 56ec3626f0ba (bug 1341265)
Backed out changeset 09f04c26176c (bug 1341265)
Backed out changeset b861bb6771c7 (bug 1341265)
Backed out changeset 820e01c32bcd (bug 1341265)
Backed out changeset 88e497d213fe (bug 1341265)
Backed out changeset e9272f7d1823 (bug 1341265)
Backed out changeset 33a140c71ff0 (bug 1341265)
2021-08-07 19:07:28 +03:00
André Bargull 58f4af8485 Bug 1341265 - Part 11: Optimise Set.prototype.has for objects in CacheIR. r=iain
Inline `Set.prototype.has` in CacheIR when called with objects.

Implementing `MacroAssembler::hashObject()` on 32-bit platforms is difficult,
because it uses 64-bit operations, so we either have to allocate twice as much
registers for `Register64` or alternatively spill the values on the stack. For
now just punt and only support this optimisation on 64-bit platforms.

Differential Revision: https://phabricator.services.mozilla.com/D118977
2021-08-02 16:38:04 +00:00
André Bargull 93463e429d Bug 1341265 - Part 1: Remove stale fixme comment. r=iain
Bug 775896 has been fixed, so we can remove the fixme comment.

Differential Revision: https://phabricator.services.mozilla.com/D118967
2021-08-02 16:38:00 +00:00
Iain Ireland 094d5b88a8 Bug 1719396: Don't hash sizeof(size_t) in HashBytes r=glandium
The loop in HashBytes currently hashes both a word of data (as intended) and the length of that word of data (a constant).

This was [acknowledged as a bug](https://bugzilla.mozilla.org/show_bug.cgi?id=729940#c49) when first written, but slipped through the cracks and was never fixed.

Differential Revision: https://phabricator.services.mozilla.com/D119466
2021-07-19 21:35:40 +00:00
Gerald Squelart 81d28b5530 Bug 1719959 - Better Tag type choice, fixed corresponding test - r=emilio
On some systems, uint_fast8_t may be as big as size_t! So the `static_assert(sizeof(aIndex) < sizeof(size_t))` could fail there. The better test here is to check for the expected type (uint_fast8_t).

Now, since uint_fast8_t can be bigger than 8 bits, we may as well choose it for variant sizes greater than 255, up to UINT_FAST8_MAX.
(The added parentheses help clang-format distinguish '<' for tests vs for templates.)

Differential Revision: https://phabricator.services.mozilla.com/D119574
2021-07-11 09:43:50 +00:00
Nika Layzell 0e22f3df51 Bug 1717808 - aIter must be valid after extracting last segment of a BufferList, r=glandium
When advancing to Beta, we stop adding sentinels after serialized data
in IPC::Message objects. These sentinels would cause all Extract calls
to not reach the end of the message buffer on Nightly. This patch fixes
an assertion failure which can occur when extract calls fully empty the
buffer, and the finished iterator is advanced by 0 bytes.

Differential Revision: https://phabricator.services.mozilla.com/D118838
2021-07-07 18:03:03 +00:00
Nika Layzell 82ee49b019 Bug 1717778 - Upgrade some LinkedList asserts to RELEASE_ASSERT, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D118719
2021-06-25 16:53:39 +00:00
Nika Layzell 5731c1747c Bug 1717526 - String's implicit conversion operator causes COW relocations, r=xpcom-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D118430
2021-06-23 01:57:00 +00:00
Alexandru Michis e3d24b013a Backed out changeset 3beb01f5d643 (bug 1717526) for causing gtest failures in SpanTest.from_xpcom_collections
CLOSED TREE
2021-06-23 01:58:49 +03:00
Nika Layzell c14de7eabc Bug 1717526 - String's implicit conversion operator causes COW relocations, r=xpcom-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D118430
2021-06-22 21:18:03 +00:00
Nika Layzell 10e86924f0 Bug 1706374 - Part 14: Track the absolute offset on iterators, r=glandium
This should improve the performance of large calls to AdvanceAcrossSegments
when using a very large BufferList, as we no longer need to iterate over each
element to find the destination when the call is closer to the end.

This will be used most frequently with the new footer code to seek to the end
of an IPC message to read out the footer.

Differential Revision: https://phabricator.services.mozilla.com/D116667
2021-06-22 18:17:23 +00:00