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

748200 Коммитов

Автор SHA1 Сообщение Дата
Julien Wajsberg dd99d64577 Bug 1567222 - Improve profiler tests for the service worker case r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D107715
2021-03-11 14:31:11 +00:00
Julien Wajsberg 1081130547 Bug 1567222 - Add a LOAD_STOP marker when a request goes through a service worker r=asuth,necko-reviewers,valentin,gerald
Differential Revision: https://phabricator.services.mozilla.com/D107714
2021-03-11 14:31:11 +00:00
Chris H-C 25fa34ae40 Bug 1697045 - If no client_id in state.json use the value from prefs r=janerik
Differential Revision: https://phabricator.services.mozilla.com/D107892
2021-03-11 14:27:42 +00:00
Gregory Mierzwinski 9ae77e4ce3 Bug 1696496 - Disable raptor tests running on windows10-64-ref-hw-2017. r=perftest-reviewers,igoldan
Differential Revision: https://phabricator.services.mozilla.com/D107663
2021-03-11 14:13:09 +00:00
Gregory Mierzwinski 6b41079a2e Bug 1694172 - Decrease test timeout for some talos tests. r=perftest-reviewers,alexandru.irimovici
Differential Revision: https://phabricator.services.mozilla.com/D106638
2021-03-11 14:12:35 +00:00
Florian Quèze 5b9b2e2b23 Bug 1673742 - browser_save_video_frame.js should clear the mockTransferCallback before resolving the waitForTransferComplete promise, r=mconley.
Differential Revision: https://phabricator.services.mozilla.com/D107853
2021-03-11 14:04:12 +00:00
Jan de Mooij 63a0185763 Bug 1697143 part 2 - Use NewObjectGCKind for empty object literals. r=jonco
This helps avoid a lot of dynamic slot allocations on popular websites which
improves performance. AWSY seems unaffected.

Differential Revision: https://phabricator.services.mozilla.com/D107633
2021-03-11 13:56:48 +00:00
Jan de Mooij 248283fdef Bug 1697143 part 1 - Fix JSObject::sizeOfIncludingThisInNursery to not include fixed slots twice. r=jonco
This fixes a test issue with the next patch.

Differential Revision: https://phabricator.services.mozilla.com/D107632
2021-03-11 13:56:48 +00:00
Simon Giesecke c153cfe233 Bug 1674080 - Add some required includes to the bindings generator. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D95147
2021-03-11 13:38:31 +00:00
Nikita Sen 692373c939 Bug 1696813 - Path of mach changed from mozilla-unified to project repository, i.e. mozilla-central. r=gsvelto DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D107887
2021-03-11 13:36:35 +00:00
Alexandre Poirot 4a9e835d61 Bug 1693491 - [devtools] Migrate TargetList to be a command r=nchevobbe,rpl
This changeset is incomplete and focus on places where we instantiate TargetList constructor

Differential Revision: https://phabricator.services.mozilla.com/D105611
2021-03-11 12:53:18 +00:00
Christian Holler 4cf2f28556 Bug 1689597 - Add Fuzzilli support to the build system. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D103467
2021-03-11 12:13:21 +00:00
Simon Giesecke 9622562495 Bug 1634281 - Use (STL) algorithms instead of custom hashtable iteration where possible in dom/animation. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D107683
2021-03-11 12:04:54 +00:00
Benjamin Beurdouche f8d14645f7 Bug 1694020 - land NSS 61e70233f80e UPGRADE_NSS_RELEASE, r=beurdouche
2021-03-10  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* cmd/bltest/blapitest.c, lib/freebl/blapi.h,
	lib/freebl/chacha20poly1305-ppc.c, lib/freebl/chacha20poly1305.c,
	lib/freebl/loader.c:
	Bug 1613235 - Clang-format for: POWER ChaCha20 stream cipher vector
	acceleration r=beurdouche

	Depends on D107221

	[61e70233f80e] [tip]

2021-03-10  aoeu  <aoeuh@yandex.ru>

	* cmd/bltest/blapitest.c, lib/freebl/blapi.h, lib/freebl/blapit.h,
	lib/freebl/chacha20poly1305.c, lib/freebl/chacha20poly1305.h,
	lib/freebl/ldvector.c, lib/freebl/loader.c, lib/freebl/loader.h:
	Bug 1613235 - Add POWER ChaCha20 stream cipher vector acceleration.
	r=bbeurdouche

	Depends on D107220

	[4f7ba08bd991]

	* lib/freebl/Makefile, lib/freebl/chacha20-ppc64le.S,
	lib/freebl/chacha20poly1305-ppc.c, lib/freebl/chacha20poly1305.c,
	lib/freebl/freebl.gyp, lib/freebl/freebl_base.gypi:
	Bug 1613235 - Add POWER ChaCha20 stream cipher vector acceleration.
	r=bbeurdouche

	[764124fddaa2]

2021-03-10  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* lib/freebl/ecl/ecp_secp384r1.c, lib/freebl/ecl/ecp_secp521r1.c:
	Bug 1697380 - Make a clang-format run on top of helpful
	contributions. r=beurdouche

	Depends on D106881

	[8a9174a78207]

	* lib/freebl/ecl/ecp_secp384r1.c:
	Bug 1683520 - ECCKiila P384, change syntax of nested structs
	initialization to prevent build isses with GCC 4.8. r=bbrumley

	Depends on D102389

	[150cbb169f1e]

2021-03-10  Billy Brumley  <bbrumley@gmail.com>

	* lib/freebl/ecl/ecp_secp384r1.c:
	Bug 1683520 - [lib/freebl/ecl] P-384: allow zero scalars in dual
	scalar multiplication r=bbeurdouche

	[76aca2d944ae]

2021-03-10  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* lib/freebl/ecl/ecp_secp521r1.c:
	Bug 1683520 - ECCKiila P521, change syntax of nested structs
	initialization to prevent build isses with GCC 4.8. r=bbrumley

	Depends on D102406

	[5e7affa3ce43]

2021-03-10  Billy Brumley  <bbrumley@gmail.com>

	* lib/freebl/ecl/ecp_secp521r1.c:
	Bug 1683520 - [lib/freebl/ecl] P-521: allow zero scalars in dual
	scalar multiplication r=bbeurdouche

	[a8f4918cd546]

2021-03-08  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* automation/taskcluster/scripts/run_hacl.sh,
	lib/freebl/verified/Hacl_Bignum25519_51.h,
	lib/freebl/verified/Hacl_Chacha20.c,
	lib/freebl/verified/Hacl_Chacha20.h,
	lib/freebl/verified/Hacl_Chacha20Poly1305_128.c,
	lib/freebl/verified/Hacl_Chacha20Poly1305_128.h,
	lib/freebl/verified/Hacl_Chacha20Poly1305_256.c,
	lib/freebl/verified/Hacl_Chacha20Poly1305_256.h,
	lib/freebl/verified/Hacl_Chacha20Poly1305_32.c,
	lib/freebl/verified/Hacl_Chacha20Poly1305_32.h,
	lib/freebl/verified/Hacl_Chacha20_Vec128.c,
	lib/freebl/verified/Hacl_Chacha20_Vec128.h,
	lib/freebl/verified/Hacl_Chacha20_Vec256.c,
	lib/freebl/verified/Hacl_Chacha20_Vec256.h,
	lib/freebl/verified/Hacl_Curve25519_51.c,
	lib/freebl/verified/Hacl_Curve25519_51.h,
	lib/freebl/verified/Hacl_Kremlib.h,
	lib/freebl/verified/Hacl_Poly1305_128.c,
	lib/freebl/verified/Hacl_Poly1305_128.h,
	lib/freebl/verified/Hacl_Poly1305_256.c,
	lib/freebl/verified/Hacl_Poly1305_256.h,
	lib/freebl/verified/Hacl_Poly1305_32.c,
	lib/freebl/verified/Hacl_Poly1305_32.h,
	lib/freebl/verified/kremlin/include/kremlin/internal/target.h,
	lib/freebl/verified/kremlin/include/kremlin/internal/types.h,
	lib/freebl/verified/kremlin/kremlib/dist/minimal/FStar_UInt128.h, li
	b/freebl/verified/kremlin/kremlib/dist/minimal/FStar_UInt128_Verifie
	d.h, lib/freebl/verified/kremlin/kremlib/dist/minimal/FStar_UInt_8_1
	6_32_64.h, lib/freebl/verified/kremlin/kremlib/dist/minimal/LowStar_
	Endianness.h, lib/freebl/verified/kremlin/kremlib/dist/minimal/fstar
	_uint128_gcc64.h, lib/freebl/verified/kremlin/kremlib/dist/minimal/f
	star_uint128_msvc.h, lib/freebl/verified/libintvector.h:
	Bug 1696800 - HACL* update March 2021 -
	c95ab70fcb2bc21025d8845281bc4bc8987ca683 r=beurdouche

	[3a85b452dbfa]

Differential Revision: https://phabricator.services.mozilla.com/D107995
2021-03-11 11:59:55 +00:00
Gijs Kruitbosch ea276e4ba5 Bug 1696793 - improve close and multiple dialog handling for window-modal dialogs, r=mtigley
The html:dialog event can respond to [esc] keypresses itself. In that case,
we need to close the embedded dialog ourselves, or the UI ends up broken.

We also need to make sure that if e.g. the opening multiple pages from bookmarks warning is up,
and then the user tries to quit or in some other way opens another dialog, things don't break.
This also applies to tests that repeatedly invoke dialogs, where we need to wait for both
the SubDialog instance and the wrapping html:dialog element to agree on their state.

Differential Revision: https://phabricator.services.mozilla.com/D107463
2021-03-11 11:34:35 +00:00
Emilio Cobos Álvarez 40feec41aa Bug 1697511 - We do still need to wait for paint after focus in test_bug1639328.html
Differential Revision: https://phabricator.services.mozilla.com/D107996
2021-03-11 11:34:07 +00:00
Butkovits Atila 479d6f893c Backed out 2 changesets (bug 1692673) for causing build bustages on EditorBase.cpp. CLOSED TREE
Backed out changeset 988b919adc5c (bug 1692673)
Backed out changeset 5b1ba8dbfc8a (bug 1692673)
2021-03-11 12:43:24 +02:00
Jonathan Kew ba23557a7e Bug 1692673 - Update tests for new Cut/Copy command-enabling behavior. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D107481
2021-03-11 10:27:04 +00:00
Jonathan Kew 24a5b45445 Bug 1692673 - Avoid enabling Cut/Copy menu commands in text editor context when there's no selection, unless a listener is present. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D107480
2021-03-11 10:27:04 +00:00
Timothy Nikkel 2093b6b5e7 Bug 1697262. Null check content view in ScrollFrameHelper::GetPageLoadingState. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D107953
2021-03-11 10:18:54 +00:00
Jon Coppeard 7d3c65d3ee Bug 1696886 - Add a write barrier when updating accessor shapes' getters and setters r=jandem
I'm not sure why this wasn't found before, but it seems there's no pre-write barrier when changing the getter/setter objects. It's debateable whether this is required because the shape is newly created here and the getters/setters haven't had a chance to eacape by this point, but it seems safest just to add the barrier.

After adding the barrier it bacame aparrent we call the Shape consturctor for accessor shapes allocated by NativeObject::replaceWithNewEquivalentShape.  I think this is UB.  We at least need to initialize getters/setters for the barrier to work.

Differential Revision: https://phabricator.services.mozilla.com/D107494
2021-03-11 10:08:10 +00:00
Frederik Braun 2100e901b0 Bug 1697163 - restrict systemprincipal telemetry to scripts and styles r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D107643
2021-03-11 09:43:54 +00:00
Alex Henrie b24e5f0f51 Bug 1697076 - Drop assertion from mozilla::unicode::GetNaked. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D107942
2021-03-11 09:42:18 +00:00
André Bargull 0f7e5abc88 Bug 1696881 - Part 2: Implement GetOption reform for Intl objects. r=yulia
Implement the changes from <https://github.com/tc39/ecma402/pull/538>.

Depends on D107651

Differential Revision: https://phabricator.services.mozilla.com/D107652
2021-03-11 09:38:06 +00:00
André Bargull 98185e3da7 Bug 1696881 - Part 1: Update test262. r=yulia
Differential Revision: https://phabricator.services.mozilla.com/D107651
2021-03-11 09:38:05 +00:00
André Bargull cd905a0117 Bug 1697468 - Part 6: Remove InflatedChar16Sequence<LittleEndianChars>. r=arai
Depends on D107820

Differential Revision: https://phabricator.services.mozilla.com/D107821
2021-03-11 09:30:32 +00:00
André Bargull 0eec185af2 Bug 1697468 - Part 5: Remove XDRDecoder::trace(). r=arai
Depends on D107819

Differential Revision: https://phabricator.services.mozilla.com/D107820
2021-03-11 09:30:32 +00:00
André Bargull a15f0828d5 Bug 1697468 - Part 4: Remove XDRAtomTable from XDRDecoder. r=arai
Depends on D107818

Differential Revision: https://phabricator.services.mozilla.com/D107819
2021-03-11 09:30:32 +00:00
André Bargull 998f5385cc Bug 1697468 - Part 3: Remove stale atom-table check in XDRAtom. r=arai
This code was added in bug 1587638 for incremental encoding, but incremental
encoding has been removed in bug 1690530.

Depends on D107817

Differential Revision: https://phabricator.services.mozilla.com/D107818
2021-03-11 09:30:31 +00:00
André Bargull fc00c7de1e Bug 1697468 - Part 2: Inline trivial ParserAtomSpanBuilder constructor. r=arai
Depends on D107816

Differential Revision: https://phabricator.services.mozilla.com/D107817
2021-03-11 09:30:31 +00:00
André Bargull f73533b4c1 Bug 1697468 - Part 1: Remove unused members of ParserAtomSpanBuilder. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D107816
2021-03-11 09:30:30 +00:00
Julien Wajsberg f97ba3fef8 Bug 1697478 - Make the devtools performance panel's select input work in dark mode r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D107824
2021-03-11 09:21:09 +00:00
sotaro 94488f4809 Bug 1697715 - Change pref gfx.webrender.software.opengl to true on Android r=jnicol
On Android, we expect to use WebRender (Software OpenGL)"RenderCompositorOGLSWGL" instead of WebRender (Software)"RenderCompositorSWGL".

Differential Revision: https://phabricator.services.mozilla.com/D107969
2021-03-11 08:45:32 +00:00
Nihanth Subramanya 2228beab47 Bug 1696550 - Suppress Firefox Monitor breach alert doorhangers when proton panels are enabled. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D107783
2021-03-11 07:38:25 +00:00
Masayuki Nakano 18e444a223 Bug 1697249 - Stop creating `<span>` element for keeping same style as the link when the link will be unlinked r=m_kato
When typing at edge of a link, editor splits the link element at the edge (i.e.,
creating an empty link element).  Then, unlink the new link element (i.e.,
clearing the "link style").  At this time, `class` attribute and `style`
attribute are cloned to new `<span>` element for keeping the original style.
However, in this case, other browsers discard the specified style of the link.

On the other hand, when unlinking a link with `execCommand("unlink")`, the
other browsers keep specified style coming from `style` attribute.

Therefore, this patch adds new state to `PropItem`, which indicates whether
the `class` and `style` attribute should be cloned or discarded.  And then,
when preparing for inserting text, this patch makes it pass to the utility
method.

For better compatibility, we should stop cloning `class` attribute, but not
in this bug because this patch should be minimized for requesting uplift to
beta channel.

Differential Revision: https://phabricator.services.mozilla.com/D107801
2021-03-11 07:19:33 +00:00
Julian Descottes bef640a950 Bug 1697118 - [devtools] Check followWindowGlobalLifeCycle flag in navigateTo test helper r=nchevobbe,ochameau
Depends on D105540

Differential Revision: https://phabricator.services.mozilla.com/D105542
2021-03-11 07:15:04 +00:00
Julian Descottes 6bc4352872 Bug 1697118 - [devtools] Read isTopLevelTarget server flag to trigger target switching r=ochameau,nchevobbe
Depends on D106539

Differential Revision: https://phabricator.services.mozilla.com/D105540
2021-03-11 07:15:03 +00:00
Julian Descottes 9def83a8fd Bug 1695046 - [devtools] Use the same signature for showToolbox and showToolboxForTab r=ochameau,nchevobbe,rpl
Depends on D107100

Differential Revision: https://phabricator.services.mozilla.com/D106539
2021-03-11 06:32:15 +00:00
Jan Varga 1cc0ba995e Bug 1686031 - Rename OriginMetadata.h to CommonMetadata.h; r=dom-storage-reviewers,sg
Differential Revision: https://phabricator.services.mozilla.com/D107608
2021-03-11 05:53:17 +00:00
Ryan Hunt f6ffb71dca Bug 1692063 - Add complete subtyping and equivalence algorithm. r=lth
This commit implements the complete subtyping and equivalence algorithm
used for struct and array types. The algorithm is an implementation of
gfp^t [1] for the subtyping rules presented in the MVP. An simple
python implementation is given at the end of V8 MVP doc [2].

Two challenges were given for integrating this with our validation code.
 * Subtyping checks require allocating in a cache, which may OOM. Code was
   modified to handle this appropriately and abstracted across validation.
 * The type assumption cache is not thread-safe and cannot exist in the
   type context. Code was modified to store this in appropriate locations
   and thread it through validation.

[1] Pierce, Benjamin C. Types and Programming Languages. definition 21.6.4
[2] https://docs.google.com/document/d/1yAWU3dbs8kUa_wcnnirDxUu9nEBsNfq0Xo90OWx6yuo/edit#heading=h.9dwoku9340md

Differential Revision: https://phabricator.services.mozilla.com/D105052
2021-03-11 04:49:54 +00:00
Ryan Hunt 0470e79a93 Bug 1670103 - Reduce register usage in GC instructions to statisfy x86. r=lth
This commit reduces the register usage of the GC instructions to allow
this code to work on x86.

Specifically
 * array.new switches to a decrement `length` to zero loop to drop the separate index register
 * emitGcArraySet uses a manual lshift and rshift on the array index instead of a scratch register
 * emitBarrieredStore is tweaked to preserve registers so we don't need an extra register
   in emitGcArraySet
 * struct.set uses the rdata register as a scratch pointer while loading the rdata pointer
 * array.set shuffles the `value` operand from the top of the stack to the bottom, so that
   we don't need it in a register until later in the instruction.

Differential Revision: https://phabricator.services.mozilla.com/D107777
2021-03-11 04:49:53 +00:00
Ryan Hunt fef82c665b Bug 1670103 - Add array tests. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D104278
2021-03-11 04:49:53 +00:00
Ryan Hunt 9a5629830d Bug 1670103 - Add [struct/array].get_[u/s] instructions. r=lth
This commit adds the zero/sign extension get instructions for
arrays and structs. The proposal specifies that these instructions
are used iff the field type is i8 or i16. Validation is updated
to check for this.

Differential Revision: https://phabricator.services.mozilla.com/D104277
2021-03-11 04:49:53 +00:00
Ryan Hunt 1bf0d6db36 Bug 1670103 - Don't use ArrayBufferObject for OutlineTypedObject storage. r=lth
This was only needed because at one point you could acquire the backing
storage of a TypedObject. Replace this with explicitly allocated data
to simplify OutlineTypedObject, along with removing the need to
have a separate object/owner pointer in baseline codegen.

Differential Revision: https://phabricator.services.mozilla.com/D104276
2021-03-11 04:49:52 +00:00
Ryan Hunt 0e906c34cd Bug 1670103 - Add arrays. r=lth
This commit adds ArrayType, extends TypedObject to support arrays, adds array
instructions to validation and the baseline compiler.

* ArrayType subtyping is initially shallow just like StructType.
* Every array value is an OutlineTypedObject to simplify codegen
* The length of an array is a uint32_t stored at the beginning of the object
* TypedObject trace lists were removed to simplify the implementation
* The implementation of gc object load/storing is factored out in the baseline
  compiler to allow for sharing between struct.new/struct.get/struct.set/array.new
  /array.get/array.set. This was the trickiest part and had the most churn.
* New methods are added for pushing/popping AnyReg from the value stack to share
  code for gc set/get
* The only correct use of StructType.isInline_ is during struct.new, so the field
  is removed and replaced with a direct check of if the struct's size is small
  enough to be inline.

Differential Revision: https://phabricator.services.mozilla.com/D104275
2021-03-11 04:49:52 +00:00
Ryan Hunt 80180cc895 Bug 1670103 - Refactor baseline compiler to have separate RegPtr and RegRef. r=lth
This commit tries to add more type safety to the baseline compiler by adding a
new RegRef and moving all GC uses to use it.

A couple of notes on the changes.
 * RegRef is used only for GC pointers. It is realized on the Stk as a separate type.
 * RegPtr is used only for non-GC pointers. It is pushed on the Stk as a I32/I64 depending
   on the host system. RegPtr is not a typedef of RegI32/RegI64 to get slightly more type
   safety during codegeneration. This could be subverted through the Stk, but I think this is
   a good compromise.
 * ValType::hostPtr() is added for determining the wasm equivalent for a native ptr, I32/I64.
 * BaseStackFrame::pushPtr/popPtr is renamed to pushGPR/popGPR to signify that it's
   used for RegI32, RegPtr, and RegRef.
 * AnyReg only operates on RegRef
 * Stk only allows RegRef
 * valueAddr used by PostBarrier is switched to be a RegPtr to avoid a type mismatch as
   it is not a GC object, it only points into a GC object.

Differential Revision: https://phabricator.services.mozilla.com/D107307
2021-03-11 04:49:51 +00:00
Ryan Hunt 3953b4f8f1 Bug 1670103 - Add FieldType and use in structs. r=lth
This commit reorganizes the ValType class to be a base template PackedType<T>, which
is instantiated as a FieldType and ValType. This allows for some type safety
so that most code that never cares about I8/I16 doesn't need to be extended, while
still allowing sharing of implementation across ValType and FieldType.

I tried several different ways of achieving these goals, and this was the least
bad. I'm open to other alternatives.

StructType is extended to use FieldType for it's fields and struct instructions are
extended to handle this. The tricky case is struct.get which will zero extend the
packed fields. A later commit will make this spec compliant by adding get_u,get_s.

Differential Revision: https://phabricator.services.mozilla.com/D104274
2021-03-11 04:49:51 +00:00
Ryan Hunt dd4446e887 Bug 1670103 - Add struct.new_default_with_rtt instruction. r=lth
This commit adds a version of the struct new instruction
which takes no initial values and gives each field the
default value.

Differential Revision: https://phabricator.services.mozilla.com/D104273
2021-03-11 04:49:51 +00:00
Ryan Hunt 458d618135 Bug 1670104 - Remove struct.narrow instruction and use ref.cast. r=lth
The struct.narrow instruction is no longer needed as we have the
ref.test/cast/br_on_null instructions.

Differential Revision: https://phabricator.services.mozilla.com/D104271
2021-03-11 04:49:50 +00:00
Ryan Hunt 11b1ab5345 Bug 1670104 - Add rtt.sub and ref.test/ref.cast/br_on_cast. r=lth
This commit adds rtt.sub as an instruction to form new RttValue's with
an explicit subtyping chain. This is implemented as a link from sub
rtt to parent rtt. Validation ensures that chains can only be formed
from a T <: U. Each execution of an rtt.sub instruction creates a new
rtt value. This may be changed in the future to align with the proper
spec semantics.

With rtt.sub, we can now implement ref.test/ref.cast/br_on_cast
instructions that operate on structs with an rtt. The subtyping
check is implemented as an instance call performing a linear
search through rtt chains.

Differential Revision: https://phabricator.services.mozilla.com/D104269
2021-03-11 04:49:50 +00:00