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

83886 Коммитов

Автор SHA1 Сообщение Дата
Cristian Tuns f2f6eac4d6 Backed out 3 changesets (bug 1487113) for causing mochitest failures. CLOSED TREE
Backed out changeset b20e5d76c77e (bug 1487113)
Backed out changeset b0b2b27dcb68 (bug 1487113)
Backed out changeset 9214b396eb84 (bug 1487113)
2021-09-14 17:38:32 -04:00
Ryan Hunt dea4bb4039 Bug 1439578 - wasm: Don't emit OOL code if it's not used. r=lth
This commit implements the simple approach of not emitting an
OOL stub for baseline if it's entry label is not used.

Differential Revision: https://phabricator.services.mozilla.com/D125231
2021-09-14 20:46:59 +00:00
Cristian Tuns 9ab0598ced Backed out 5 changesets (bug 1730188) for causing spidermonkey bustages on WasmJS.cpp. CLOSED TREE
Backed out changeset 2bed6e1ca974 (bug 1730188)
Backed out changeset ff58a6be4b4d (bug 1730188)
Backed out changeset 5c3b5a307381 (bug 1730188)
Backed out changeset 86b39494212e (bug 1730188)
Backed out changeset 64e7d6e00c8a (bug 1730188)
2021-09-14 17:06:06 -04:00
Ryan Hunt 4541d75d59 Bug 1730188 - wasm: Extend import/export reflection with types. r=lth
Module.imports/exports gives reflection of the imports and exports
of a module. We had a non-standard .signature property for function
types that is now superseded with the JS-type proposal [1].

The implementation of creating a type object for the various kinds
of definitions had to be refactored to be shared.

[1] https://github.com/WebAssembly/js-types/issues/19

Differential Revision: https://phabricator.services.mozilla.com/D125274
2021-09-14 20:45:59 +00:00
Ryan Hunt fefe422336 Bug 1730188 - wasm: Check input function to WA.Function constructor. r=lth
The input function to WA.Function is currently restricted to not
be an exported wasm function. This is being debated in the proposal,
but is currently being asserted in our code and so should be checked
for explicitly.

In addition, some OOM checking, standardized naming, and general
cleanup was added to WA.Function.

Differential Revision: https://phabricator.services.mozilla.com/D125228
2021-09-14 20:45:58 +00:00
Ryan Hunt bf45fb8ffc Bug 1730188 - wasm: Fix type() method implementations for OOM safety. r=lth
The type() method implementations didn't accurately report OOM's
upon allocation failure. A drive by fix was done to make the
ValTypesToArray method idiomatic and return the array instead of
defining it upon a properties array. Some potential rooting issues
were also addressed.

Depends on D125226

Differential Revision: https://phabricator.services.mozilla.com/D125227
2021-09-14 20:45:58 +00:00
Ryan Hunt 8e0afc31b8 Bug 1730188 - wasm: Fix Table.type method to report type as RefType instead of TableRepr. r=lth
We should report the precise RefType that a table has, not the
flattened TableRepr.

Depends on D125225

Differential Revision: https://phabricator.services.mozilla.com/D125226
2021-09-14 20:45:58 +00:00
Ryan Hunt 4d3baaf516 Bug 1730188 - wasm: Fix WA.Function constructor name. r=lth
The name of WA.Function constructor is "WasmFunction", but should
be "Function".

Differential Revision: https://phabricator.services.mozilla.com/D125225
2021-09-14 20:45:57 +00:00
Yury Delendik 564b18936f Bug 1487113 - Use alt-data to cache stream-compiled WebAssembly modules. r=necko-reviewers,valentin,dragana
Differential Revision: https://phabricator.services.mozilla.com/D26731
2021-09-14 20:12:51 +00:00
Caroline Cullen 005ecf476c Bug 1729752 - Get last shape property without iterating over the whole shape. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D124986
2021-09-14 18:26:54 +00:00
Caroline Cullen 2547857152 Bug 1729752 - Remove spew for dictionary shapes. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D124985
2021-09-14 18:26:53 +00:00
André Bargull b1647a4555 Bug 1730508 - Part 1: Propagate ICUError where possible. r=platform-i18n-reviewers,gregtatum
Fully propagate `ICUError` instead of using `InternalError`.

Differential Revision: https://phabricator.services.mozilla.com/D125408
2021-09-14 16:10:09 +00:00
Jon Coppeard acf734ed01 Bug 1730504 - Remove IterativeFailureTest::Params class and store fields directly in the class r=tcampbell
Depends on D125513

Differential Revision: https://phabricator.services.mozilla.com/D125514
2021-09-14 14:43:00 +00:00
Jon Coppeard b798fd95ec Bug 1730504 - Make ParseIterativeFailureTestParams into a method on IterativeFailureTest r=tcampbell
Depends on D125402

Differential Revision: https://phabricator.services.mozilla.com/D125513
2021-09-14 14:43:00 +00:00
Jon Coppeard eaa6a0e71b Bug 1730504 - Make OOM tests work outside debug builds r=tcampbell
It's possible to compile OOM testing facilites outside of debug builds with the
--enable-oom-breakpoint flag so the test should work in that case too.

Differential Revision: https://phabricator.services.mozilla.com/D125402
2021-09-14 14:42:59 +00:00
Jon Coppeard 37ed61d583 Bug 1730504 - Split up IterativeFailureTest::test method into separate methods r=tcampbell
This splits the method up into several sub-methods to make it easier to see
what's going on.

Depends on D125400

Differential Revision: https://phabricator.services.mozilla.com/D125401
2021-09-14 14:42:59 +00:00
Jon Coppeard 8fd425a2e0 Bug 1730504 - Refactor iterative failure test framework into a class r=tcampbell
This adds an IterativeFailureTest class which encompasses the current testing
framework with the testing code in a 'test' method.

Differential Revision: https://phabricator.services.mozilla.com/D125400
2021-09-14 14:42:58 +00:00
Tooru Fujisawa f1be6c68b4 Bug 1729859 - Use raw pointer or already_AddRefed in stencil API. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D125036
2021-09-14 13:26:44 +00:00
André Bargull 691b7f9b13 Bug 1639515 - Part 6: Remove no longer used Intl.getDisplayNames. r=platform-i18n-reviewers,gregtatum
This function is no longer needed after part 5.

Differential Revision: https://phabricator.services.mozilla.com/D76118
2021-09-14 09:20:33 +00:00
André Bargull 4c720e7e22 Bug 1639515 - Part 1: Add non-standard "abbreviated" style to MozDisplayNames. r=platform-i18n-reviewers,gregtatum
As a non-standard extension, add the "abbreviated" style to be able to select
CLDR's abbreviated format. This style is used by the DateTimePicker component
for weekdays.

Differential Revision: https://phabricator.services.mozilla.com/D125174
2021-09-14 09:20:31 +00:00
Jon Coppeard cb019e4cef Bug 1730140 - Fix calculation of compartments that are expected to be cleaned up now gray roots are marked later r=sfink
Previously we did this calculation after marking all the roots that doesn't
work any more. This handles setting the maybeAlive flag based on gray root
marking after that happens for each sweep group, and moves the calculation of
the compartments expected to die to the end of sweeping.

Depends on D125188

Differential Revision: https://phabricator.services.mozilla.com/D125380
2021-09-14 07:49:39 +00:00
Jon Coppeard fe43168478 Bug 1730140 - Remove the gray root buffer and mark gray roots after the start of collection r=sfink,mccr8
This removes gray root buffering from the first marking slice and traces the
gray roots directly in a later slice. This relies on Heap<T> read barriers
being sufficient to ensure correctness.

This is conservative in that it makes no effort to skip tracing roots added
after the start of GC. It also doesn't trace roots removed after the start of
GC, but this is OK because barriers ensure marking of any observed values.

The gray root tracing callback will be called once per sweep group, which means
we will trace all zone holders and xpconnect gray roots for every group rather
than just once. This should not be a problem in practice as we expect the
number of zones and hence zone groups to decrease with fission.

On the plus side we no longer have to do a virtual dispatch per root traced
(for the buffering tracer), allocate memory for the buffer, or trace each root
twice.

Note that this doesn't make the gray root marking itself incremental yet.

Differential Revision: https://phabricator.services.mozilla.com/D125188
2021-09-14 07:49:39 +00:00
criss 59cdd2a63e Backed out 6 changesets (bug 1639515) for causing failures on test_intlUtils_getDisplayNames.html. CLOSED TREE
Backed out changeset eaff696ed6a6 (bug 1639515)
Backed out changeset 6d361f92b27e (bug 1639515)
Backed out changeset 6919213b03f7 (bug 1639515)
Backed out changeset 5a08d3b17fa7 (bug 1639515)
Backed out changeset 3681111b7ed3 (bug 1639515)
Backed out changeset 970826244d07 (bug 1639515)
2021-09-14 10:45:35 +03:00
André Bargull 5ca3012766 Bug 1639515 - Part 6: Remove no longer used Intl.getDisplayNames. r=platform-i18n-reviewers,gregtatum
This function is no longer needed after part 5.

Differential Revision: https://phabricator.services.mozilla.com/D76118
2021-09-14 06:52:34 +00:00
André Bargull d527935302 Bug 1639515 - Part 1: Add non-standard "abbreviated" style to MozDisplayNames. r=platform-i18n-reviewers,gregtatum
As a non-standard extension, add the "abbreviated" style to be able to select
CLDR's abbreviated format. This style is used by the DateTimePicker component
for weekdays.

Differential Revision: https://phabricator.services.mozilla.com/D125174
2021-09-14 06:52:32 +00:00
Steve Fink 3ff9c34f6e Bug 1729602 - Forward T constructor arguments through `PersistentRooted<T> foo(cx, ...args...)` r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124996
2021-09-13 22:58:53 +00:00
Steve Fink 2ddcc9e183 Bug 1729602 - Templatize RootHolder in PersistentRooted to more closely match Rooted r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124995
2021-09-13 22:58:53 +00:00
Steve Fink 90d784a9bd Bug 1729602 - Forward T constructor arguments through `Rooted<T> foo(cx, ...args...);` r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D124869
2021-09-13 22:58:52 +00:00
Steve Fink c6e64ca198 Bug 1729602 - Remove the magic cx constructor handling in `Rooted<TypeConstructibleWithCx> foo(cx);` r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124994
2021-09-13 22:58:52 +00:00
Marian-Vasile Laza 53d94ff3fb Backed out 4 changesets (bug 1729602) for causing build bustages on RootingAPI.h. CLOSED TREE
Backed out changeset ba1ba9d974a4 (bug 1729602)
Backed out changeset 0f06d31a9008 (bug 1729602)
Backed out changeset cf7f13072e9f (bug 1729602)
Backed out changeset b277bca3bfe1 (bug 1729602)
2021-09-14 01:24:35 +03:00
Steve Fink 1aeed2512d Bug 1729602 - Forward T constructor arguments through `PersistentRooted<T> foo(cx, ...args...)` r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124996
2021-09-13 22:10:11 +00:00
Steve Fink 93a074d14e Bug 1729602 - Templatize RootHolder in PersistentRooted to more closely match Rooted r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124995
2021-09-13 22:10:11 +00:00
Steve Fink 270176e7f7 Bug 1729602 - Forward T constructor arguments through `Rooted<T> foo(cx, ...args...);` r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D124869
2021-09-13 22:10:10 +00:00
Steve Fink 55a28eed06 Bug 1729602 - Remove the magic cx constructor handling in `Rooted<TypeConstructibleWithCx> foo(cx);` r=tcampbell,jonco
Differential Revision: https://phabricator.services.mozilla.com/D124994
2021-09-13 22:10:09 +00:00
Ted Campbell 0f8a9092da Bug 1730034 - Cleanup reporting of pcOffset in WarpTrialInlining spew. r=iain
Report the pcOffset on the "candidate" line, so that it is available for all
results.

Depends on D125133

Differential Revision: https://phabricator.services.mozilla.com/D125464
2021-09-13 21:11:06 +00:00
Ted Campbell 2c14cf0966 Bug 1730034 - Show polymorphism in WarpTrialInlining spew. r=iain
When doing trial inlining, show a spew message for cases that are not being
inlined due to polymorphism. Also fix indentation of SUCCESS in existing spew.

Differential Revision: https://phabricator.services.mozilla.com/D125133
2021-09-13 21:11:06 +00:00
Greg Tatum b0d6525aca Bug 1719696 - Cache the original skeleton, and use it in DateIntervalFormat; r=anba,platform-i18n-reviewers,dminor
Differential Revision: https://phabricator.services.mozilla.com/D125254
2021-09-13 20:53:01 +00:00
Greg Tatum 7f63288178 Bug 1719696 - Test the behavior DateTimeInterval formatting with skeletons; r=anba
Differential Revision: https://phabricator.services.mozilla.com/D125253
2021-09-13 20:53:01 +00:00
Greg Tatum 4525442433 Bug 1719696 - Use a components bag for Intl.DateTimeFormat implementation; r=anba
This patch completes the move of pattern manipulation for
Intl.DateTimeFormat and places it in the unified API. If and when we
switch to ICU4X, the pattern manipulation code can be removed, as ICU4X
will handle that.

Differential Revision: https://phabricator.services.mozilla.com/D123823
2021-09-13 20:53:00 +00:00
Greg Tatum b2eb7b49ba Bug 1719696 - Naively move the hour cycle computations; r=anba,platform-i18n-reviewers,dminor
This patch will not compile. It naively copies over the hour cycle code
from SpiderMonkey into the unified components. In a following patch,
these will be modified to use only the unified types.

Differential Revision: https://phabricator.services.mozilla.com/D123821
2021-09-13 20:52:59 +00:00
Sandor Molnar d57e75a979 Backed out 11 changesets (bug 1730426) for causing assertion failures in src/vm/JSContext.
Backed out changeset ef37ce0219ea (bug 1730426)
Backed out changeset f1c824d4d39c (bug 1730426)
Backed out changeset d2dadbfb2cca (bug 1730426)
Backed out changeset 76ff766c5cdf (bug 1730426)
Backed out changeset bf394cc4b7f3 (bug 1730426)
Backed out changeset 4d27b63a0250 (bug 1730426)
Backed out changeset b28009dee3ff (bug 1730426)
Backed out changeset a22343e12ce4 (bug 1730426)
Backed out changeset 8363cf2dbda3 (bug 1730426)
Backed out changeset d89e8415905e (bug 1730426)
Backed out changeset 9e42f1860492 (bug 1730426)
2021-09-13 23:42:28 +03:00
Ryan Hunt d4cb81777b Bug 1727284 - wasm: Test for bug 1727284. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D125233
2021-09-13 19:47:41 +00:00
Ted Campbell 811579616a Bug 1730426 - Start explicitly throwing uncatchable exceptions. r=jandem
Add Interrupt status to JS::ExceptionStatus and set it when intentionally
throwing an uncatchable exception. This is only a guideline for now, so avoid
excessive asserts for now.

Differential Revision: https://phabricator.services.mozilla.com/D125363
2021-09-13 19:21:26 +00:00
Ted Campbell 4d190c6349 Bug 1730426 - Remove redundant ReportOutOfMemory calls. r=jandem
Remove ReportOutOfMemory calls that are redundant. Also add a few missing calls
that were previously covered by a redundant call. Later patches will add asserts
to check for these redundancies. This patch should not change behaviour since
the out-of-memory exception continues to be thrown (just now only once).

Differential Revision: https://phabricator.services.mozilla.com/D125362
2021-09-13 19:21:26 +00:00
Ted Campbell c46aa5b088 Bug 1730426 - Do not call JS_ReportError* when exception is pending. r=sfink,rhunt
Avoid throwing custom errors in cases when an appropriate error is already being
thrown.

Differential Revision: https://phabricator.services.mozilla.com/D125361
2021-09-13 19:21:25 +00:00
Ted Campbell 0989171bd0 Bug 1730426 - Save exception before calling jit::BailoutIonToBaseline. r=jandem
Save the exception state of the ExceptionHandlerBailout before calling the
normal bailout code. If the the bailout fails, we drop the error that triggered
the bailout and instead use the error that caused bailout to fail (which is
probably OOM). This is implicitly what the previous code did, but this avoids
implicitly clobbering exceptions.

This also means we no longer run the RInstruction interpreter under while an
exception is pending so we can remover a number of callWithABI exclusions.

Differential Revision: https://phabricator.services.mozilla.com/D125360
2021-09-13 19:21:25 +00:00
Ted Campbell 68f614681d Bug 1730426 - Use SystemAllocPolicy for DebuggerFrameVector. r=jandem
Explicitly call ReportOutOfMemory from callers of getDebuggerFrames instead of
implicitly by the Vector. Also clear pending exception in slowPathOnLeaveFrame
before raising the OOM if getDebuggerFrames fails.

Differential Revision: https://phabricator.services.mozilla.com/D125359
2021-09-13 19:21:24 +00:00
Ted Campbell 105f2e6e9c Bug 1730426 - Stop leaking exceptions in TypeArray jsapi-test. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D125358
2021-09-13 19:21:24 +00:00
Ted Campbell ec9893ec78 Bug 1730426 - Add testcase for OOM during Bailout. r=jandem
This oomTest covers snapshot recovery during a bailout, including inlined
frames. Previous test coverage was spotty and was platform dependent.

Differential Revision: https://phabricator.services.mozilla.com/D125357
2021-09-13 19:21:24 +00:00
Ted Campbell 7387eebf60 Bug 1730426 - Fix testSlowScript JSAPI test. r=jandem
This test was missing from moz.build so it has not been running for long enough
that the JavaScript in it is no longer even legal JS.

Differential Revision: https://phabricator.services.mozilla.com/D125356
2021-09-13 19:21:23 +00:00