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

2026 Коммитов

Автор SHA1 Сообщение Дата
Kagami Sascha Rosylight b6115988e8 Bug 1656041 - Part 2: Return a struct from GetFrameFromDirection r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85317
2020-08-04 15:23:47 +00:00
Simon Giesecke 18d9c43178 Bug 1654564 - Fix documentation of requirements on target in MOZ_TRY_VAR. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84531
2020-08-04 08:50:26 +00:00
Csoregi Natalia e321d2b4c3 Backed out changeset 6b53d90ee8b4 (bug 1656894) for asan bustage on xxhash.h. CLOSED TREE 2020-08-03 22:53:58 +03:00
Ryan VanderMeulen 4837f819c1 Bug 1656894 - Update xxHash to version 0.8.0. r=dthayer
Differential Revision: https://phabricator.services.mozilla.com/D85767
2020-08-03 17:30:19 +00:00
Nathan Froyd a527a4b54d Bug 1223932 - remove mfbt/GuardObjects.h; r=jwalden
We no longer need this for reasons outlined in the previous commit.

Depends on D85168

Differential Revision: https://phabricator.services.mozilla.com/D85169
2020-07-31 18:58:32 +00:00
Sylvestre Ledru 843f943758 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D85678
2020-08-02 15:29:15 +00:00
Jeff Gilbert fa50c42c4b Bug 1656034 - Add UnderlyingValue() to mfbt. - r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85495
2020-07-31 23:04:44 +00:00
Chris Martin 552aa91269 Bug 1652561 - Remote Win32k calls in nsLookAndFeel::GetFontImpl() r=emilio,geckoview-reviewers,agi,froydnj
Content processes will now receive cached values for GetFontImpl() from the
parent process during initialization and whenever the theme changes.

This eliminates the use of several Win32k calls in content.

Differential Revision: https://phabricator.services.mozilla.com/D83406
2020-07-31 16:21:44 +00:00
Nathan Froyd e3ebda1914 Bug 1223932 - delete guard object uses from the tree; r=jwalden
CLOSED TREE

We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Mihai Alexandru Michis a911a108d0 Backed out changeset ac9c811bc427 (bug 1223932) for causing spidermonkey rust failures.
CLOSED TREE
2020-07-30 18:23:21 +03:00
Nathan Froyd bec9f9b93a Bug 1223932 - delete guard object uses from the tree; r=jwalden
We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Chris Peterson fd6ca4ec31 Bug 1652914 - Part 2: Remove unused MOZ_STATIC_ASSERT macro. r=jwalden
Depends on D83736

Differential Revision: https://phabricator.services.mozilla.com/D83737
2020-07-17 02:48:36 +00:00
Emilio Cobos Álvarez ff61891772 Bug 1653011 - Simplify and make WeakPtr<Derived> usable and compact. r=froydnj,sg,geckoview-reviewers,jgilbert,kvark,snorp
Having two classes in the inheritance chain inherit from SupportsWeakPtr
now won't compile, but you can use WeakPtr<Derived> when any base class
inherits from SupportsWeakPtr.

Differential Revision: https://phabricator.services.mozilla.com/D83674
2020-07-23 14:51:46 +00:00
Jeff Gilbert 35f892e782 Bug 1607940 - Stand up webgl.out-of-process:true path. r=handyman,nika,froydnj
* Use clearer pref names.
* Default (and only support) IPDL dispatching.
* Make DispatchCommands async-only.
* Sync ipdl command per sync webgl entrypoint.
  * Eat the boilerplate cost, since there's not too many.
* Run SerializedSize off same path as Serialize.
* All shmem uploads go through normal DispatchCommands.
* Defer pruning of dead code for now so we can iterate quickly.
* Use Read/Write(begin,end) instead of (begin,size).
  * This would have prevented a bug where we read/wrote N*sizeof(T)*sizeof(T).

Differential Revision: https://phabricator.services.mozilla.com/D81495
2020-07-21 22:56:52 +00:00
Frederik Braun c4e884127c Bug 1651977 - add MOZ_NO_VALIDATE r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D83069
2020-07-13 09:01:00 +00:00
Simon Giesecke 4fa1e97bce Bug 1651323 - Add MOZ_LIFETIME_BOUND attribute. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D82681
2020-07-10 12:16:13 +00:00
Jean-Yves Avenard bd648e63b9 Bug 1649974 - P1. Make WeakPtr work with generic taskqueue. r=froydnj
It worked until now as IPC's MessageChannel was only used with background taskqueue; which use a threadpool made of a single thread only.

Differential Revision: https://phabricator.services.mozilla.com/D82499
2020-07-10 01:36:12 +00:00
Razvan Maries 05fa077757 Backed out 5 changesets (bug 1650996, bug 1649974) for perma failures on Android 7.0. CLOSED TREE
Backed out changeset 8f8174ba409d (bug 1650996)
Backed out changeset 374598f9c37a (bug 1650996)
Backed out changeset 236757acc073 (bug 1650996)
Backed out changeset 89d5cabfa2df (bug 1649974)
Backed out changeset 6e475ddbd18c (bug 1649974)
2020-07-09 10:33:45 +03:00
Jean-Yves Avenard 09c6a1b3f4 Bug 1649974 - P1. Make WeakPtr work with generic taskqueue. r=froydnj
It worked until now as IPC's MessageChannel was only used with background taskqueue; which use a threadpool made of a single thread only.

Differential Revision: https://phabricator.services.mozilla.com/D82499
2020-07-09 06:10:24 +00:00
Mihai Alexandru Michis b29ef28dc4 Backed out 2 changesets (bug 1649974) as requested by jyavenard.
CLOSED TREE

Backed out changeset 4d7301e8eeb3 (bug 1649974)
Backed out changeset 69bacb6e8287 (bug 1649974)
2020-07-09 05:43:59 +03:00
Nick Alexander aa96e0fc28 Bug 1651130 - Part 2: Add a new `tools/update-programs` build project. r=froydnj
Here "update programs" refers to the various standalone binaries we
produce in order to update Firefox.  There's not strong conceptual
coherence between them; rather, it's the pieces that the
Install/Update team generally work on.

To use this build project, prepare a minimal mozconfig with
`--enable-project=tools/update-programs`.  Depending on the mozconfig
options and host and target OS, some of the following will be built:

1. the maintenance service;
2. the updater binary;
3. the Windows Default Browser Agent;
4. the Background Update Agent.

Differential Revision: https://phabricator.services.mozilla.com/D82644
2020-07-08 23:03:21 +00:00
Jean-Yves Avenard d7560b65c6 Bug 1649974 - P1. Make WeakPtr work with generic taskqueue. r=froydnj
It worked until now as IPC's MessageChannel was only used with background taskqueue; which use a threadpool made of a single thread only.

Differential Revision: https://phabricator.services.mozilla.com/D82499
2020-07-08 13:15:42 +00:00
Bogdan Tara 0867b964e2 Backed out 5 changesets (bug 1650996, bug 1649974) for hazard failures CLOSED TREE
Backed out changeset de5e55b59a31 (bug 1650996)
Backed out changeset 35faa46f46f1 (bug 1650996)
Backed out changeset 6f779a3875a8 (bug 1650996)
Backed out changeset fac1e5a07a6c (bug 1649974)
Backed out changeset 3c5157a9e872 (bug 1649974)
2020-07-08 16:07:56 +03:00
Jean-Yves Avenard 9194155201 Bug 1649974 - P1. Make WeakPtr work with generic taskqueue. r=froydnj
It worked until now as IPC's MessageChannel was only used with background taskqueue; which use a threadpool made of a single thread only.

Differential Revision: https://phabricator.services.mozilla.com/D82499
2020-07-08 03:58:18 +00:00
june wilde 99fcac8838 Bug 1649967 - Add missing annotation attributes to builds with clang-plugin enabled; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81958
2020-07-06 17:03:23 +00:00
Sylvestre Ledru caf785c695 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D82178
2020-07-04 09:38:43 +00:00
Simon Giesecke 273b5b9fd1 Bug 1649704 - Improve consistency of Span's span_iterator comparison. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81827
2020-07-02 13:46:01 +00:00
Nathan Froyd b272eadc07 Bug 1323307 - use compiler-builtin preprocessor macros for endianness always; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D81551
2020-07-02 14:36:54 +00:00
Mike Hommey 77976c2cc1 Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r=gerald
This was previously r=jchen and landed, but was backed out because some
Android tests were running on an unrealistically old Linux kernel. These
tests have been retired, so this can reland.

Differential Revision: https://phabricator.services.mozilla.com/D81278
2020-06-26 03:48:49 +00:00
David Major a0cb558b98 Bug 1648541 - Rename details namespace in SPSCQueue r=froydnj
I will admit from the start that this patch is goofy and is not the "proper" fix.

If you're unlucky enough to tickle the current unification in `dom/media`, then there's a conflict between `namespace mozilla::details` of `SPSCQueue.h` and `namespace details` of Chromium's `task.h`. Ultimately, the badness stems from some unified file doing `using namespace mozilla;`, but I'm really not enthusiastic about reworking that when I just want to get unblocked.

I'm going to attempt to justify the yuckiness of this patch on the basis that:
* `SPSCQueue.h` is super self-contained and rarely looked at, I bet nobody will notice this change
* Tons of other code prefers the spelling `mozilla::detail` anyway

Differential Revision: https://phabricator.services.mozilla.com/D81162
2020-06-25 19:30:52 +00:00
Simon Giesecke 9235fda693 Bug 1648452 - Make construction of NotNull work with MovingNotNull of derived-type. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81077
2020-06-25 13:10:08 +00:00
Simon Giesecke 6fbe4dd29b Bug 1648044 - Add Maybe<T&>::refEquals methods. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80845
2020-06-25 15:09:58 +00:00
Simon Giesecke e30a7e3356 Bug 1647647 - Add InitializedOnce::ref methods. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80843
2020-06-25 13:12:47 +00:00
John Paul Adrian Glaubitz 1304678d83 Bug 1318905 - mfbt:tests: Define RETURN_INSTR for riscv64 in TestPoisonArea r=glandium
Define RETURN_INSTR for riscv64 in TestPoisonArea, i.e. the riscv64 assembly
opcodes for "ret ; ret".

Differential Revision: https://phabricator.services.mozilla.com/D78625
2020-06-18 07:11:09 +00:00
Simon Giesecke 2c863dcd11 Bug 1646391 - Simplify ReverseIterator. r=froydnj
The following simplifications are made:
* Unnecessary function template arguments are removed.
* Unnecessary copy constructor definitions are removed (making the types
  movable where possible).
* Iterators are moved where possible rather than copied.
* Unnecessary MOZ_IMPLICIT on a constructor with two arguments is removed.

Differential Revision: https://phabricator.services.mozilla.com/D80015
2020-06-18 07:49:16 +00:00
Mihai Alexandru Michis b0915875b3 Backed out changeset 186d892dc218 (bug 1646391) for causing bustages in TestReverseIterator.cpp
CLOSED TREE
2020-06-17 20:08:01 +03:00
Simon Giesecke 9fa5c13f41 Bug 1646391 - Simplify ReverseIterator. r=froydnj
The following simplifications are made:
* Unnecessary function template arguments are removed.
* Unnecessary copy constructor definitions are removed (making the types
  movable where possible).
* Iterators are moved where possible rather than copied.
* Unnecessary MOZ_IMPLICIT on a constructor with two arguments is removed.

Differential Revision: https://phabricator.services.mozilla.com/D80015
2020-06-17 15:20:25 +00:00
Simon Giesecke 9cf654a99f Bug 1645429 - Do not use ReverseIterator in nsTObserverArray::NonObservingRange. r=froydnj
Depends on D79957

Differential Revision: https://phabricator.services.mozilla.com/D79958
2020-06-17 13:29:02 +00:00
Simon Giesecke 901af53e36 Bug 1645429 - Add tests for ReverseIterator and fix implementation of ReverseIterator::operator-. r=froydnj
Depends on D79488

Differential Revision: https://phabricator.services.mozilla.com/D79957
2020-06-17 13:54:12 +00:00
David Major 0f1c6a1f28 Bug 1646171 - Fix vsnprintf complaint in Assertions.cpp r=froydnj
For some reason, our clang-plugin didn't notice this before clang 11.

Differential Revision: https://phabricator.services.mozilla.com/D79901
2020-06-16 21:26:16 +00:00
Sylvestre Ledru 85c05f3a47 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D79795
2020-06-16 14:37:23 +00:00
Simon Giesecke 8c0f977ccd Bug 1645429 - Use std::reverse_iterator instead of mozilla::ReverseIterator where possible. r=froydnj
mozilla::ReverseIterator is required for "stashing iterators", but otherwise
std::reverse_iterator can be used and is potentially more efficient.

Also fix some other glitches in iterator type definitions.

Differential Revision: https://phabricator.services.mozilla.com/D79489
2020-06-16 10:14:01 +00:00
Simon Giesecke 1a13e8aef8 Bug 1645328 - Add in-place constructor to Maybe. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D79448
2020-06-15 09:04:02 +00:00
Brindusan Cristian bff7221969 Backed out changeset 5200dd8a0de5 (bug 1645328) for cppunit assertion failures at Maybe.h. CLOSED TREE 2020-06-12 20:12:37 +03:00
Simon Giesecke af931b95e6 Bug 1645328 - Add in-place constructor to Maybe. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D79448
2020-06-12 14:42:26 +00:00
John Paul Adrian Glaubitz eac5e496ab Bug 1325771 - mfbt:tests: Define RETURN_INSTR for m68k in TestPoisonArea r=glandium
Define RETURN_INSTR for m68k in TestPoisonArea, i.e. the m68k assembly
opcodes for "rts ; rts".

Differential Revision: https://phabricator.services.mozilla.com/D77290
2020-06-06 06:45:53 +00:00
John Paul Adrian Glaubitz 44fad57771 Bug 1325771 - mfbt:tests: Handle targets with less strict alignment in TestCompactPair r=jesup
Previously, the tests assumed that the alignment of int and long equals
their size. This commit fixes the tests for targets like m68k that have
sizeof(int) == 4 and alignof(int) == 2. A static helper function sizemax
was introduced as the offset of the second element in Pair<int,long>
might be either determined by its alignment requirement or the size of
the preceding int element and we use the helper function to pick the
larger of the two values.

Differential Revision: https://phabricator.services.mozilla.com/D77289
2020-06-06 06:45:53 +00:00
John Paul Adrian Glaubitz 319d3205ce Bug 1325771 - mfbt: Reorder parameters for MOZ_ALIGNED_DECL r=jwalden
Currently, MOZ_ALIGNED_DECL uses the order (_type, _align) for its
parameters. However, this order makes the code less readable when
_type is a larger object like a struct because the value for _align
would be at the end of the struct definition. By swapping the order
of _type and _align, the alignment value will always be next to
the type name, regardless how far the definition of _type extends.

Differential Revision: https://phabricator.services.mozilla.com/D77288
2020-06-03 18:31:06 +00:00
Dorel Luca 0154691eae Backed out 5 changesets (bug 1325771) for Spidermonkey failures and build bustage in build/src/mfbt/tests/TestCompactPair.cpp. CLOSED TREE
Backed out changeset ace40545b46c (bug 1325771)
Backed out changeset b3e0fb410a1c (bug 1325771)
Backed out changeset d69ac62c063f (bug 1325771)
Backed out changeset 24e6299e112d (bug 1325771)
Backed out changeset 393a6ff847ce (bug 1325771)
2020-06-03 20:23:08 +03:00
John Paul Adrian Glaubitz 196d2e2764 Bug 1325771 - mfbt:tests: Define RETURN_INSTR for m68k in TestPoisonArea r=glandium
Define RETURN_INSTR for m68k in TestPoisonArea, i.e. the m68k assembly
opcodes for "rts ; rts".

Depends on D77289

Differential Revision: https://phabricator.services.mozilla.com/D77290
2020-06-02 07:01:56 +00:00