Commit Graph

73605 Commits

Author SHA1 Message Date
Doug Thayer
f9dfbe888c Bug 1594051 - Perform fallible alloc when copying buffer from StartupCache r=froydnj
This effectively used to be a fallible alloc inside nsZipArchive.

Differential Revision: https://phabricator.services.mozilla.com/D52199

--HG--
extra : moz-landing-system : lando
2019-11-07 20:00:48 +00:00
Chris Fallin
b78c29a5b0 Bug 1594753: Backed out changeset 78d02a12be59. r=mgaudet
This is a backout of the change in Bug 1580246 (Remove object-literal
singleton objects allocated at parse).

The change above caused an unexpected performance regression on Kraken,
in particular due to the way that the new parse-time approach to
allocating objects influenced the `ObjectGroup`s of the created objects,
leading to overly-polymorphic ICs in a numeric-heavy benchmark
(`stanford-crypto-aes`).

We'll work on a fix, but in the meantime, we don't want to leave the
slowdown on m-c.

Differential Revision: https://phabricator.services.mozilla.com/D52200

--HG--
extra : moz-landing-system : lando
2019-11-07 19:42:44 +00:00
André Bargull
ac627436c6 Bug 1540021: Implement String.prototype.replaceAll proposal. r=jorendorff
This change doesn't include the String.prototype.matchAll modifications, because
those are already part of the main spec.

MCallOptimize.cpp:
- The inlining is more conservative than `inlineIsRegExpObject`, because it's not
clear at this point we need the extra features from `inlineIsRegExpObject`.

String.js:
- The self-hosted part is slightly different than the current spec text, because
it combines the match and replace loops. The non-functional replace part is
implemented in C++, so we can reuse the existing C++ matcher functions.

String.cpp:
- Added some extra assertions to `AppendDollarReplacement` and also had to change
the `infallibleAppend` call into a normal `append` call, because when called
from `replaceAll`, we may not have reserved enough space in the StringBuffer.
- `replaceAll` has a specialised implementation when the pattern is the empty
string, because in that case the pattern is interleaved in-between each
character, so we don't need to find the next match and can also directly reserve
the correct string length (when no '$' characters are present in the replacement
string). This should allow users to update from the previous
`str.split("").join(r)` pattern to `str.replaceAll("", r)` without loss of
performance.
- When the pattern isn't the empty string, we reuse the existing `StringMatch`
and `AppendDollarReplacement` functions to match and replace the pattern.

This feature is still restricted to Nightly, because no test262 tests are
currently available.

Differential Revision: https://phabricator.services.mozilla.com/D51842

--HG--
extra : moz-landing-system : lando
2019-11-07 18:20:15 +00:00
Jeff Walden
7d9bfee3e9 Bug 1593888 - Actually finish the job of making rtfuzzing not bootleg stuff. r=decoder
Differential Revision: https://phabricator.services.mozilla.com/D52210

--HG--
extra : moz-landing-system : lando
2019-11-07 19:25:54 +00:00
Jeff Walden
e0161e99fc Bug 1593887 - Fix a bunch of bootlegged dependency errors if you change FILES_PER_UNIFIED_FILE to 1. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D51749

--HG--
extra : moz-landing-system : lando
2019-11-07 14:51:22 +00:00
André Bargull
ab86a06549 Bug 1560355 - Part 3: Add support for "numberingSystem" and "calendar" options. r=jwalden
Currently restricted to Nightly-only, because the spec PR still contains bugs
and there are no test262 tests for this feature (except for tests to ensure the
properties are retrieved from the options object).

Differential Revision: https://phabricator.services.mozilla.com/D51855

--HG--
extra : moz-landing-system : lando
2019-11-07 16:31:12 +00:00
André Bargull
53a8de0162 Bug 1560355 - Part 2: Use LanguageTag to add "collation" keyword to Collator locale. r=jwalden
Use ApplyUnicodeExtensionToTag to add the collation keyword instead of manually
splicing the keyword into the language tag.

Differential Revision: https://phabricator.services.mozilla.com/D51854

--HG--
extra : moz-landing-system : lando
2019-11-07 14:24:53 +00:00
André Bargull
530597f569 Bug 1560355 - Part 1: Change ApplyUnicodeExtensionToTag to accept a list of Unicode extension keywords. r=jwalden
This will allow us to reuse this function to insert the calendar and numberingSystem
options into the locale in part 3.

Differential Revision: https://phabricator.services.mozilla.com/D51853

--HG--
extra : moz-landing-system : lando
2019-11-07 14:24:28 +00:00
Yoshi Cheng-Hao Huang
4a495fa4e4 Bug 1593975 - update test. r=jonco
check if enqueueMark is defined in opt build.

Differential Revision: https://phabricator.services.mozilla.com/D51994

--HG--
extra : moz-landing-system : lando
2019-11-07 14:25:35 +00:00
Yoshi Cheng-Hao Huang
5bc51fe951 Bug 1593975 - update linearWeakMarkingDisabled_ to MainThreadOrGCTaskData. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D51810

--HG--
extra : moz-landing-system : lando
2019-11-05 21:09:48 +00:00
Jon Coppeard
d5ecf971f1 Bug 1593270 - Take account of adjusted slice budget when recording how long over budget slices ran r=allstarschh
The problem is that we change the slice budget after passing it to gcstats::AutoGCSlice. Later on we compare the actual time taken against the old value and think we've overrun our budget. The fix is to make the change earlier.

Depends on D52161

Differential Revision: https://phabricator.services.mozilla.com/D52162

--HG--
extra : moz-landing-system : lando
2019-11-07 15:14:45 +00:00
Razvan Maries
45ea2e3d2c Backed out changeset 4bf64cf38713 (bug 1594561) for build bustages on wasm-testharness.js. CLOSED TREE 2019-11-07 17:21:42 +02:00
Ryan Hunt
6e2cb1503d Bug 1594561 - Allow dropped segs with mem/table.init when len=0. r=lth
This was an ambiguity in the spec between the prose and formalism. The spec
interpreter implements it this way.

Differential Revision: https://phabricator.services.mozilla.com/D52130

--HG--
extra : moz-landing-system : lando
2019-11-07 07:32:40 +00:00
Jeff Walden
a7672c8d31 Bug 1582348 - Allow an Erroring->Closed transition in assertions, as this can happen in WritableStreamFinishInFlightClose. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51969

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:39 +00:00
Jeff Walden
685e0fbc01 Bug 1582348 - Properly clear the temporarily-pending TypeError created in WritableStreamDefaultWriterRelease. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51968

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:26 +00:00
Jeff Walden
174b39b11f Bug 1582348 - Make WritableStream.prototype.abort return a promise rejected with a TypeError if passed an improper |this|, not throw that TypeError. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51967

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:28 +00:00
Jeff Walden
531a7624de Bug 1582348 - Make the .length on various writable-stream constructors correct. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51966

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:30 +00:00
Jeff Walden
713c122186 Bug 1582348 - Implement WritableStreamClose and WritableStream.prototype.close. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51965

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:32 +00:00
Jeff Walden
939dba64a3 Bug 1582348 - Don't name WritableStreamDefaultWriter functions as WritableStream_* 'cause this copypasta happenstance is nonsensical (and might someday break scumbag unified builds). r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51964

--HG--
extra : moz-landing-system : lando
2019-11-07 00:19:34 +00:00
Matthew Gaudet
071558ab26 Bug 1594516 - Use baseScript() for argumentsHasVarBinding() r=tcampbell
Depends on D52072

Differential Revision: https://phabricator.services.mozilla.com/D52073

--HG--
extra : moz-landing-system : lando
2019-11-06 20:19:48 +00:00
Matthew Gaudet
2fbdc85eb9 Bug 1594516 - Use baseScript() for accessing funHasExtensibleScope r=tcampbell
Depends on D52071

Differential Revision: https://phabricator.services.mozilla.com/D52072

--HG--
extra : moz-landing-system : lando
2019-11-06 20:17:00 +00:00
Matthew Gaudet
c36809e639 Bug 1594516 - Use baseScript() instead of nonLazyScript() for needsHomeObject r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D52071

--HG--
extra : moz-landing-system : lando
2019-11-06 19:27:12 +00:00
Dorel Luca
5a23cda6ca Backed out 7 changesets (bug 1582348) for Spidermonkey failures in streams/writable-streams/brand-checks.any.js. CLOSED TREE
Backed out changeset aae7cc724b3e (bug 1582348)
Backed out changeset aa11d917882f (bug 1582348)
Backed out changeset 99ed7bab2aa7 (bug 1582348)
Backed out changeset bf2338a0da80 (bug 1582348)
Backed out changeset a4bf67b78cde (bug 1582348)
Backed out changeset ef291ddea398 (bug 1582348)
Backed out changeset 05aca2d6e15a (bug 1582348)
2019-11-07 02:14:12 +02:00
Jeff Walden
d9f41d56b7 Bug 1582348 - Allow an Erroring->Closed transition in assertions, as this can happen in WritableStreamFinishInFlightClose. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51969

--HG--
extra : moz-landing-system : lando
2019-11-06 21:32:58 +00:00
Jeff Walden
c1106e8448 Bug 1582348 - Properly clear the temporarily-pending TypeError created in WritableStreamDefaultWriterRelease. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51968

--HG--
extra : moz-landing-system : lando
2019-11-06 21:32:43 +00:00
Jeff Walden
f48d0b90d6 Bug 1582348 - Make WritableStream.prototype.abort return a promise rejected with a TypeError if passed an improper |this|, not throw that TypeError. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51967

--HG--
extra : moz-landing-system : lando
2019-11-06 21:32:28 +00:00
Jeff Walden
ae7c60efc1 Bug 1582348 - Make the .length on various writable-stream constructors correct. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51966

--HG--
extra : moz-landing-system : lando
2019-11-06 21:32:18 +00:00
Jeff Walden
ab41b023a0 Bug 1582348 - Implement WritableStreamClose and WritableStream.prototype.close. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51965

--HG--
extra : moz-landing-system : lando
2019-11-06 21:32:01 +00:00
Jeff Walden
698a44f25e Bug 1582348 - Don't name WritableStreamDefaultWriter functions as WritableStream_* 'cause this copypasta happenstance is nonsensical (and might someday break scumbag unified builds). r=arai
Differential Revision: https://phabricator.services.mozilla.com/D51964

--HG--
extra : moz-landing-system : lando
2019-11-06 21:31:47 +00:00
Dorel Luca
819a6c47e8 Merge mozilla-central to autoland. CLOSED TREE 2019-11-07 00:08:31 +02:00
Dorel Luca
a0370f2bc4 Backed out changeset 955256297d6d (bug 1579367) for causing a top crash in Bug 1594404. a=backout 2019-11-06 23:19:09 +02:00
Coroiu Cristina
27a753cc4a Backed out changeset 96048cce4b80 (bug 1571656) for xpcshell failures at toolkit/components/places/tests/unifiedcomplete/test_autofill_origins.js on a CLOSED TREE 2019-11-06 22:59:45 +02:00
Jim Blandy
8e9dc4339d Bug 1593388: Remove gdb pretty-printer for js::jit::ExecutableAllocator. r=nbp
This pretty printer wants to traverse a mozilla::detail::HashTable, but the way
that type represents the actual table has changed drastically since the
pretty-printer was last working. The type of the `mTable` member is now `char*`,
and it seems to be an array of hash values concatenated with the actual entries.
Fixing that seems like it will take a significant investment.

I would love to see this brought back from the revision control history and
fixed, but removing it is all I have time for at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D51487

--HG--
extra : moz-landing-system : lando
2019-11-06 19:43:42 +00:00
Matthew Gaudet
2a31c05b21 Bug 1580338 - Defer RegExp allocation until after parse r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D46349

--HG--
extra : moz-landing-system : lando
2019-11-06 18:45:28 +00:00
Moritz Birghan
70c7a633fb Bug 1571656 - Use Assert.jsm numeric comparison functions in tests r=mixedpuppy,MattN
Differential Revision: https://phabricator.services.mozilla.com/D40614

--HG--
extra : moz-landing-system : lando
2019-11-06 18:07:54 +00:00
Jim Blandy
d1a85a3c74 Bug 1593393: Fix SpiderMonkey gdb JSObject pretty-printer. r=sfink
The pretty-printer expects to find the value of the `NON_NATIVE` flag in
`js::Class`, which doesn't exist any more. That flag is now a static const
member of `JSClass`.

Differential Revision: https://phabricator.services.mozilla.com/D51489

--HG--
extra : moz-landing-system : lando
2019-11-05 20:36:59 +00:00
Jeff Walden
84be73074c Bug 1593888 - Fix bootlegging errors in jsrtfuzzing.cpp. r=decoder
Differential Revision: https://phabricator.services.mozilla.com/D51750

--HG--
extra : moz-landing-system : lando
2019-11-05 12:32:44 +00:00
Brindusan Cristian
4448c0ef94 Backed out changeset 302c71978ca7 (bug 1580338) for build bustages on ParseNode.h. CLOSED TREE 2019-11-06 00:27:50 +02:00
Matthew Gaudet
ef839e75fc Bug 1580338 - Defer RegExp allocation until after parse r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D46349

--HG--
extra : moz-landing-system : lando
2019-11-05 21:45:29 +00:00
Brindusan Cristian
116f82cab3 Backed out changeset 6922ef47c257 (bug 1593975) for sm bustages on bug-1593975.js. CLOSED TREE 2019-11-05 23:04:18 +02:00
Yoshi Cheng-Hao Huang
2795fb4e1e Bug 1593975 - update linearWeakMarkingDisabled_ to MainThreadOrGCTaskData. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D51810

--HG--
extra : moz-landing-system : lando
2019-11-05 17:32:34 +00:00
Jon Coppeard
ba3386ca9b Bug 1594061 - Make FinalizationGroups work correctly when called from a different realm r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D51856

--HG--
extra : moz-landing-system : lando
2019-11-05 18:12:09 +00:00
Jon Coppeard
72de7c7261 Bug 1593260 - Don't use remove_if for sweeping GCVector as the predicate can modify the elements r=anba
Differential Revision: https://phabricator.services.mozilla.com/D51786

--HG--
extra : moz-landing-system : lando
2019-11-05 15:42:19 +00:00
André Bargull
a580f8c700 Bug 1593801: Fix conditional load of BigInt digits. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D51797

--HG--
extra : moz-landing-system : lando
2019-11-05 15:28:34 +00:00
Ryan Hunt
4d03d80f48 Bug 1592783 - Update in-tree and spec-tests for trapping change. r=lth
This commit relies on a patch to the spec interpreter/tests to also make the
trapping change there [1] [2].

[1] https://github.com/eqrion/wasm-spec/tree/spidermonkey-tree-tests
[2] b467c3e4e3

Differential Revision: https://phabricator.services.mozilla.com/D51756

--HG--
extra : moz-landing-system : lando
2019-11-05 15:27:34 +00:00
Ryan Hunt
dfd7ad632e Bug 1592783 - Change bulk-memory instructions to trap before writing. r=lth
This commit changes all bulk-memory instructions to perform up-front bounds
checks and trap if any access would be out-of-bounds before writing.

This affects:
 * memory.init,copy,fill
 * table.init,copy,fill
 * data segment instantiation (reduces to memory.init)
 * elem segment instantiation (reduces to table.init)

Spec issue: https://github.com/WebAssembly/bulk-memory-operations/issues/111

Differential Revision: https://phabricator.services.mozilla.com/D51755

--HG--
extra : moz-landing-system : lando
2019-11-05 15:27:07 +00:00
Tooru Fujisawa
be66409383 Bug 1591406 - Use infallible methods for already allocated Vector. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D50611

--HG--
extra : moz-landing-system : lando
2019-11-05 16:11:16 +00:00
Tooru Fujisawa
6bb9a09010 Bug 1591359 - Part 2: Rename HuffmanTableUnreachable to TableImplementationUninitialized. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D50598

--HG--
extra : moz-landing-system : lando
2019-11-05 16:11:16 +00:00
Tooru Fujisawa
222d884cf6 Bug 1591359 - Part 1: Separate HuffmanTableValue& array into TableStatus array and uninitialized GenericHuffmanTable array. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D50597

--HG--
extra : moz-landing-system : lando
2019-11-05 15:44:06 +00:00
Andy Wingo
131db600b5 Bug 1592973 - Fix WebAssembly ABIResultIter for stack arguments r=lth
Differential Revision: https://phabricator.services.mozilla.com/D51269

--HG--
extra : moz-landing-system : lando
2019-11-05 15:38:39 +00:00