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

82071 Коммитов

Автор SHA1 Сообщение Дата
Jan de Mooij c0b54e7385 Bug 1701897 - Make check for redundant property changes more precise. r=jonco
The object flags are only relevant for the last property's shape. Comparing them
to the flags stored in the property's shape could result in doing unnecessary work
in certain (actually redundant) cases.

Differential Revision: https://phabricator.services.mozilla.com/D110222
2021-04-02 11:01:02 +00:00
Dorel Luca 1a4e2df429 Backed out 73 changesets (bug 1701013, bug 1702002, bug 1702409, bug 1700460, bug 1702343, bug 1702064, bug 1702127, bug 1695201, bug 1701094, bug 1701518, bug 1701925, bug 1701082, bug 1700731, bug 1702554, bug 1700806, bug 1702636, bug 1702356, bug 1701367, bug 1702213, bug 1702016, bug 1702072, bug 1701552, bug 1701163, bug 1701617, bug 1700590, bug 1702395, bug 1701957, bug 1701869, bug 1701665, bug 1701797, bug 1701815, bug 1702311, bug 1699554, bug 1685746, bug 1701854, bug 1701743, bug 1700962, bug 1701149, bug 1702063, bug 1701835, bug 1700680, bug 1702346, bug 1699663, bug 1701088, bug 1701554, bug 1701340, bug 1700555, bug 1701965) for Spidermonkey failure in websockets/Close-reason-unpaired-surrogates.any.js. CLOSED TREE
Backed out changeset acc9163f5027 (bug 1702636)
Backed out changeset 2271e34e1dff (bug 1702554)
Backed out changeset 4b88c693744e (bug 1702395)
Backed out changeset 728b070609ec (bug 1702409)
Backed out changeset dd28d6a791c6 (bug 1702213)
Backed out changeset 2a16cf17f787 (bug 1702213)
Backed out changeset 6d0c80dd84e5 (bug 1701554)
Backed out changeset fbb8e88c4a46 (bug 1700962)
Backed out changeset fb06450eb741 (bug 1702356)
Backed out changeset 3b33a57712e7 (bug 1702356)
Backed out changeset 94279bac2e03 (bug 1702343)
Backed out changeset 4008943a0a01 (bug 1702343)
Backed out changeset dac4f40bd535 (bug 1702311)
Backed out changeset b299b847a674 (bug 1702311)
Backed out changeset 821832cc65e0 (bug 1702346)
Backed out changeset fa9bb3ef8e7c (bug 1702346)
Backed out changeset aa3fd3cc371d (bug 1701340)
Backed out changeset 64c23da7df4b (bug 1701340)
Backed out changeset 3627322128fc (bug 1702064)
Backed out changeset f7320176ac91 (bug 1702063)
Backed out changeset 719d9520bf41 (bug 1699554)
Backed out changeset 4520b73d7d66 (bug 1699554)
Backed out changeset 71a51387fa26 (bug 1700680)
Backed out changeset e7df88f5486d (bug 1702127)
Backed out changeset 72caaaf6a8a0 (bug 1702072)
Backed out changeset fdb9037f0c7d (bug 1702072)
Backed out changeset 74ee07430592 (bug 1702002)
Backed out changeset a5699e2096c0 (bug 1701835)
Backed out changeset a8b2ce16792b (bug 1701835)
Backed out changeset 867fdb0213f5 (bug 1701965)
Backed out changeset ace3704fb911 (bug 1701965)
Backed out changeset 792a4d2142e9 (bug 1701854)
Backed out changeset ef6361547e79 (bug 1700590)
Backed out changeset 3b017985ee85 (bug 1700590)
Backed out changeset 6da00bacefc3 (bug 1702016)
Backed out changeset a9461df0c80b (bug 1701094)
Backed out changeset e043daa21152 (bug 1701094)
Backed out changeset 8f7836e5ddb2 (bug 1701743)
Backed out changeset 1903ad1b43f4 (bug 1701743)
Backed out changeset dfb109ed7c96 (bug 1685746)
Backed out changeset 06e38d5545df (bug 1701869)
Backed out changeset bdfa16181776 (bug 1701617)
Backed out changeset 0e9b7ab9e766 (bug 1701617)
Backed out changeset 75d4a4de35c4 (bug 1701925)
Backed out changeset 20b68f567596 (bug 1701957)
Backed out changeset 0eb626d27dcd (bug 1701957)
Backed out changeset b4d74eb7e3ba (bug 1701797)
Backed out changeset f008a995ba9a (bug 1701797)
Backed out changeset 270e75be505a (bug 1699663)
Backed out changeset 9a355f80bbf1 (bug 1701163)
Backed out changeset a5bbcf4f8773 (bug 1701163)
Backed out changeset 68642dccc9ec (bug 1701552)
Backed out changeset 2c5af71e3bd8 (bug 1701013)
Backed out changeset bd006b2fccce (bug 1701013)
Backed out changeset ad078240fa71 (bug 1700555)
Backed out changeset 349ef4f21764 (bug 1701088)
Backed out changeset ad06dad76fa1 (bug 1701088)
Backed out changeset ebee617e87be (bug 1701149)
Backed out changeset 81c2b3dfb8e0 (bug 1701815)
Backed out changeset ef4f569dd6ca (bug 1701815)
Backed out changeset 49a10b99331e (bug 1700806)
Backed out changeset 422919e8fcf7 (bug 1700731)
Backed out changeset 57145ddfd157 (bug 1700731)
Backed out changeset 8eb1bd9b50c4 (bug 1701665)
Backed out changeset 661c9c9fb65a (bug 1701367)
Backed out changeset 807515c043b1 (bug 1701367)
Backed out changeset f8c48b475050 (bug 1700460)
Backed out changeset f6ef152b0769 (bug 1700460)
Backed out changeset f3092d098513 (bug 1695201)
Backed out changeset b8aec4a94f79 (bug 1695201)
Backed out changeset f71bea8bb5e5 (bug 1701082)
Backed out changeset a3f3c9dd9d21 (bug 1701518)
Backed out changeset ef3f57f06597 (bug 1701518)
2021-04-02 14:33:35 +03:00
Tom Schuster 0402c13e27 Bug 1702636 - Fix cancelPromise in ReadableStreamTee being resolved twice (again). r=arai . CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D110657
2021-04-02 10:13:09 +00:00
Cosmin Sabou 5d3865217b Backed out 2 changesets (bug 1701787) for causing jit related windows crashes. CLOSED TREE
Backed out changeset 5be01eeef88d (bug 1701787)
Backed out changeset 54d193a0c932 (bug 1701787)
2021-04-01 22:02:37 +03:00
Iain Ireland 7e6951a798 Bug 1701787: Remove LoadNewObjectFromTemplateResult r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110434
2021-04-01 17:15:22 +00:00
Iain Ireland 7ae4d4718a Bug 1701787: Add NewPlainObjectResult r=jandem
When allocating a plain object with no reserved slots, the information that we need from the template object is minimal: the shape, the AllocKind, and the number of fixed/dynamic slots. To make it possible to share code between NewObject ICs, this patch reads the relevant information out of the template object in NewObjectIRGenerator and encodes it into the CacheIR. We generate code using a new masm function that effectively inlines `initGCThing` and `initGCSlots` into `createGCObject`.

Conveniently, every `JSOp::NewObject` is a plain object with no reserved slots, so this patch reduces the total number of baseline ICs compiled by 2/3. In a future patch we can get rid of NewObjectIRGenerator::tryAttachTemplateObject completely.

The old code didn't support dynamic slots. It's simple enough that I just went ahead and implemented it. In a quick browser experiment, ~8-10% of NewObject ICs had dynamic slots. To limit the length of the unrolled loop, I capped support at 16, which covers ~2/3 of cases with dynamic slots. (Because we always initialize the entire capacity, which is always a power of 2, this just means we support 16 fixed + 7 dynamic, and 16 fixed + 15 dynamic.) We could also consider a follow-up patch that generates an actual loop for dynamic slots and removes the cap.

Differential Revision: https://phabricator.services.mozilla.com/D110341
2021-04-01 17:15:22 +00:00
smolnar 6a3619551b Backed out 20 changesets (bug 1662559) for causing fuzzing failures. CLOSED TREE
Backed out changeset 4c69d3aabee4 (bug 1662559)
Backed out changeset 0fbfd31e0f78 (bug 1662559)
Backed out changeset 5e4ca6c62d4b (bug 1662559)
Backed out changeset bd328ac14770 (bug 1662559)
Backed out changeset be3069057f5a (bug 1662559)
Backed out changeset 405a80f38f5c (bug 1662559)
Backed out changeset cc3a2fadee36 (bug 1662559)
Backed out changeset 118b19a448fa (bug 1662559)
Backed out changeset 0f5bcb3ca09f (bug 1662559)
Backed out changeset 1bac4e440311 (bug 1662559)
Backed out changeset 0b14a97cd0fb (bug 1662559)
Backed out changeset 1420d94f0d59 (bug 1662559)
Backed out changeset 70d767bf04ad (bug 1662559)
Backed out changeset 3902d4cb84cc (bug 1662559)
Backed out changeset 0b01a60bb702 (bug 1662559)
Backed out changeset e200366e7e3a (bug 1662559)
Backed out changeset ae45d407929f (bug 1662559)
Backed out changeset 547e0b38d66e (bug 1662559)
Backed out changeset 8970e82f0312 (bug 1662559)
Backed out changeset 88203b6f2e5a (bug 1662559)
2021-04-01 17:14:35 +03:00
Alexandru Michis 7ef047faaa Backed out changeset 0da564b9ec2e (bug 1681046) for causing dt failures in browser_webconsole_worklet_error.js
CLOSED TREE
2021-04-01 15:27:02 +03:00
Yulia Startsev cfb0da74ab Bug 1681046 - Enable Top Level Await by default r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D110394
2021-04-01 11:08:44 +00:00
Tom Schuster 4f32ce5b6c Bug 1701904 - Use the new GetOwnPropertyDescriptor function in ScriptedProxyHandler. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110442
2021-04-01 10:03:39 +00:00
Florian Quèze 113408d081 Bug 1701524 - add more inner window ids in markers, r=canaltinova.
Differential Revision: https://phabricator.services.mozilla.com/D110046
2021-03-31 18:23:13 +00:00
Caroline Cullen 30b2db3912 Bug 1700771 - Create pref for inlining maximum function size. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D110350
2021-03-31 17:18:13 +00:00
Tom Schuster 750e87626a Bug 1701904 - Start using the new GetOwnPropertyDescriptor overload in a few more places. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110308
2021-03-31 16:52:54 +00:00
Iain Ireland 9a0ff2657f Bug 1700579: Unify UseRemoved and ImplicitlyUsed flags r=jandem,nbp
If we inline a function, then range analysis may truncate an argument to the inlined function. If the callee changes, we need to recover the non-truncated argument, or else we may get the wrong result. (There's a slightly more detailed walkthrough of the bug on Bugzilla.)

We mark the arguments to inlined functions as implicitly used in `buildInlinedCall`, but we don't set UseRemoved. The difference between the two flags isn't particularly clear anyway, so this patch folds UseRemoved into ImplicitlyUsed.

Adding two reviewers because this indirectly touches range analysis, and I find all this code tricky to reason about.

***

Differential Revision: https://phabricator.services.mozilla.com/D110004
2021-03-31 16:40:23 +00:00
Iain Ireland aad9db7b3e Bug 1699056: Disable bailout assertion after purging stubs r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110353
2021-03-31 16:40:01 +00:00
Jan de Mooij 0dc8693177 Bug 1701895 - Ensure stub fields are properly aligned on 32-bit. r=iain
* In `CacheIRWriter::copyStubData`, assert stub fields are aligned based on their size.
* On 32-bit platforms, add padding to `ICCacheIRStub` and `IonICStub` to ensure stub data is aligned to 8 bytes.
* On 32-bit platforms, insert a padding field in `CacheIRWriter::addStubField` if necessary.
* Fix alignment assertions in `CacheIRStubInfo` methods to include the offset.

Differential Revision: https://phabricator.services.mozilla.com/D110221
2021-03-31 14:51:08 +00:00
Jan de Mooij 9408355c3c Bug 1701859 - Don't release script counts for scripts with Baseline code. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D110377
2021-03-31 11:24:46 +00:00
Iain Ireland 45cf139faf Bug 1701208: Specialize OSR-only phis before inserting conversions r=jandem
If we specialize OSR-only phis to `MIRType::Value` during conversion, then it is possible for `adjustPhiInputs` to see a phi that is still `MIRType::None`. On x86, this ends up with us crashing while trying to box a Value.

It's more robust to do a separate pass at the end of phi specialization, before we start converting.

Differential Revision: https://phabricator.services.mozilla.com/D109976
2021-03-30 22:38:33 +00:00
Iain Ireland 6f2d48ba35 Bug 1701713: Re-enable recover-objects.js r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110124
2021-03-30 22:38:20 +00:00
Jason Orendorff abe3d9f761 Bug 1662559 - Part 20: Tweak some comments in NameOpEmitter.h. r=arai
Depends on D108301

Differential Revision: https://phabricator.services.mozilla.com/D108302
2021-03-30 19:44:35 +00:00
Jason Orendorff 6340560d46 Bug 1662559 - Part 19: Emit DeclarationKind::PrivateName declarations and use all the optimized paths in PrivateOpEmitter. r=arai
At the same time, the initialization and storage of private methods is changed
to what the PrivateOpEmitter expects.

There are some barely-observable differences in behavior, resulting in two jit-test changes:

*   fields/bug1683784.js - An error message changed. Not really better or worse.

*   js/src/jit-test/tests/parser/script-source-extent.js - The debugger is able
    to observe initializers as individual scripts. We are no longer using
    initializers for private methods that can be optimized, and the debugger
    therefore observes the change.  I adjusted the test to expect the new
    behavior.

All js/src/tests pass.

Depends on D108300

Differential Revision: https://phabricator.services.mozilla.com/D108301
2021-03-30 19:44:35 +00:00
Jason Orendorff 37b6d0f84c Bug 1662559 - Part 18: Remove all support for private members from ElemOpEmitter. r=arai
Depends on D108299

Differential Revision: https://phabricator.services.mozilla.com/D108300
2021-03-30 19:44:34 +00:00
Jason Orendorff 13e102bcd2 Bug 1662559 - Part 17: Change BytecodeEmitter to use the new PrivateOpEmitter class. r=arai
Depends on D108298

Differential Revision: https://phabricator.services.mozilla.com/D108299
2021-03-30 19:44:34 +00:00
Jason Orendorff 37db8e0f5f Bug 1662559 - Part 16: Add PrivateOpEmitter, based on PropOpEmitter. r=arai
Depends on D108297

Differential Revision: https://phabricator.services.mozilla.com/D108298
2021-03-30 19:44:34 +00:00
Jason Orendorff 5632dc4fab Bug 1662559 - Part 15: Add AST node types for private member access expressions (`obj.#member`). r=arai
The new parse nodes then need to be handled throughout the BytecodeEmitter. No
change in behavior.

Depends on D108296

Differential Revision: https://phabricator.services.mozilla.com/D108297
2021-03-30 19:44:33 +00:00
Jason Orendorff d6e083026b Bug 1662559 - Part 14: Minor refactor for BytecodeEmitter::emitSetOrInitializeDestructuring. r=arai
The diff is a mess, but this is very straightforward--we have a combination of
if-statements and a switch that could just be a single switch.

Depends on D108295

Differential Revision: https://phabricator.services.mozilla.com/D108296
2021-03-30 19:44:33 +00:00
Matthew Gaudet 987970aa33 Bug 1662559 - Part 13: Disallow invocation of private methods inside of evalInFrame r=arai
In order to correctly support this with the optimized storage for methods we
would need new bytecode like GetAliasedVar which is able to traverse
non-EnvironmentObject environments like DebugEnvironmentProxy.

Unfortunately, for safety this means we will ultimately disable this for a number of
different private field and accessor invocations.

Differential Revision: https://phabricator.services.mozilla.com/D109402
2021-03-30 19:44:32 +00:00
Matthew Gaudet f659b44788 Bug 1662559 - Part 12: Modify effectiveScopePrivateFieldCache to store NameLocations as well. r=arai
By storing NameLocations we also get a BindingKind, which allows us to disambiguate between
PrivateMethods and Synthetics.

Differential Revision: https://phabricator.services.mozilla.com/D109401
2021-03-30 19:44:32 +00:00
Jason Orendorff 87afbb1c4f Bug 1662559 - Part 11: Move .privateBrand to a fixed location and add BytecodeEmitter::lookupPrivate() to find it. r=arai
Depends on D108294

Differential Revision: https://phabricator.services.mozilla.com/D108295
2021-03-30 19:44:32 +00:00
Jason Orendorff 5888c1da3d Bug 1662559 - Part 10: Propagate BindingKind::PrivateMethod to scope data. r=arai
This would cause private methods to be marked as such on scopes, except that
the parser still declares them as `DeclarationKind::Synthetic` for now.

Depends on D108293

Differential Revision: https://phabricator.services.mozilla.com/D108294
2021-03-30 19:44:31 +00:00
Jason Orendorff 135221fe07 Bug 1662559 - Part 9: Migrate all ClassBodyScope bindings to be Synthetic. r=arai
This affects bytecode, as Synthetic bindings do not get TDZ checks.

This patch also tightens up some assertions when creating ScopeData. There are
several methods that create ScopeData, and they had gotten out of sync. The
assertions check that the ScopeData is not silently dropping bindings that were
present in ParseContext::Scope::declared_.

Depends on D108292

Differential Revision: https://phabricator.services.mozilla.com/D108293
2021-03-30 19:44:31 +00:00
Jason Orendorff 1058803247 Bug 1662559 - Part 8: Add BindingKind::PrivateMethod. r=arai
This is how the frontend will later identify private methods in order to emit
special bytecode.

Depends on D108291

Differential Revision: https://phabricator.services.mozilla.com/D108292
2021-03-30 19:44:30 +00:00
Jason Orendorff f1c8c6faae Bug 1662559 - Part 7: Add BindingKind::Synthetic, a kind of binding for pseudo-bindings. r=arai
This is currently used only by the bindings in a ClassBodyScope.

The behavior of these bindings is like Var bindings. There is no longer a TDZ
check, and we don't bother marking them as Uninitialized. So the special case
introduced in bug 1683746, peeking at the binding name to see if we should skip
the TDZ check, is no longer needed.

Depends on D108290

Differential Revision: https://phabricator.services.mozilla.com/D108291
2021-03-30 19:44:30 +00:00
Jason Orendorff 6c5e5a41ff Bug 1662559 - Part 6: Stamp the private brand on instances. r=arai
This adds a hasPrivateBrand bit to the MemberInitializers struct in the
stencil. It is necessary to persist this bit across compilation units because
emitInitializeInstanceMembers can be called in direct eval code inside a
derived-class constructor.

Since .privateBrand is currently a `let` binding, this currently emits an
unnecessary CheckAliasedLexical instruction in the constructor for each class
that has nonstatic private methods. We'll eliminate these later on.

Depends on D108289

Differential Revision: https://phabricator.services.mozilla.com/D108290
2021-03-30 19:44:30 +00:00
Jason Orendorff a4acd0d48c Bug 1662559 - Part 5: Add .privateBrand to class body scopes. r=arai
Not every class gets this special binding. It will be needed for all classes
that have any nonstatic private methods, getters, or setters. With this patch,
we create a .privateBrand binding in the scopes for such classes, and populate
it with a symbol when initializing the class. However, it is not yet being used
anywhere; the constructor does not yet stamp instances with the private brand.

Depends on D108288

Differential Revision: https://phabricator.services.mozilla.com/D108289
2021-03-30 19:44:29 +00:00
Jason Orendorff 378cc43549 Bug 1662559 - Part 4: Introduce ClassBodyLexicalEnvironmentObject. r=arai
It is a copy of BlockLexicalEnvironmentObject. Note that

-   ClassBodyScope is *not* a LexicalScope, BUT

-   ClassBodyLexicalEnvironmentObject *is* a LexicalEnvironmentObject

This is strictly a matter of how much implementation is shared. The word
"Lexical" in LexicalEnvironmentObject, and to some extent throughout
SpiderMonkey, is alas already pretty meaningless. In the language
specification, all environments are lexical environments.

Depends on D108286

Differential Revision: https://phabricator.services.mozilla.com/D108287
2021-03-30 19:44:29 +00:00
Jason Orendorff 6169deb4be Bug 1662559 - Part 3: Tighten up type of the ClassMemberList node kind. r=arai
Depends on D108285

Differential Revision: https://phabricator.services.mozilla.com/D108286
2021-03-30 19:44:28 +00:00
Jason Orendorff 720360c44f Bug 1662559 - Part 2: Clone LexicalScope{Node} -> ClassBodyScope{Node}. r=arai
Note: This revision will have to be folded with Parts 3 and 4 before landing, as
the op PushLexicalEnv breaks here, and is replaced with PushClassBodyEnv in Part 4.

Depends on D108283

Differential Revision: https://phabricator.services.mozilla.com/D108284
2021-03-30 19:44:28 +00:00
Jason Orendorff fa1c6121c1 Bug 1662559 - Part 1: Rename NameLocation::fromBinding() -> BindingIter::nameLocation(). r=arai
Differential Revision: https://phabricator.services.mozilla.com/D108283
2021-03-30 19:44:27 +00:00
Tom Schuster b23ed6f263 Bug 1701904 - Start using the new GetOwnPropertyDescriptor overload in Object.cpp. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110230
2021-03-30 18:48:49 +00:00
Tom Schuster cf21f18c06 Bug 1701904 - Add methods directly on PropertyDescriptor. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110229
2021-03-30 18:48:49 +00:00
Tom Schuster 987b457d58 Bug 1701904 - Add a new GetOwnPropertyDescriptor function that returns Maybe<PropertyDescriptor>. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110228
2021-03-30 18:48:48 +00:00
Zhao Jiazhong a07376afb7 Bug 1685662 - [MIPS64] Fix register conflict in ma_addPtrTestOverflow. r=lth
The rt operand may be the ScratchRegister and will cause an assert fail,
now change the implementation of the function to remove the assert.

Differential Revision: https://phabricator.services.mozilla.com/D110086
2021-03-30 18:46:01 +00:00
yulia 23b1026488 Bug 1693261 - implement parent completion ordering DFS invariant extension spec change; r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D105437
2021-03-30 11:15:10 +00:00
Ted Campbell 57ecfd53ca Bug 1426385 - Properly wrap envChainObject to jsshell evaluate. r=mgaudet
This is a shell-only helper method that vaguely represents some complex Gecko
use-cases. At the very least we should not crash with scary compartment
errors.

Differential Revision: https://phabricator.services.mozilla.com/D110153
2021-03-29 21:12:16 +00:00
Zhao Jiazhong 15dc86d06b Bug 1701159 - [MIPS64] Fix some mips64 emulator bugs. r=lth
- Add some new function prototypes support
- Add wsbh/dsbh/dshd instructions support
- Sign-extend ins/lwr instructions' result

Differential Revision: https://phabricator.services.mozilla.com/D109865
2021-03-29 18:19:14 +00:00
Ted Campbell c31c204d6c Bug 1701305 - Add off-thread compile API for JS::Stencil. r=arai
Note that starting the off-thread compile simply uses the existing
mechanisms. We only need a special "finish" function to avoid automatic
instantiation.

Differential Revision: https://phabricator.services.mozilla.com/D109958
2021-03-29 16:04:03 +00:00
Ted Campbell df57c04148 Bug 1701305 - Add ES-module support to JS::Stencil API. r=arai
While this API also parses to a Stencil, care must be taken by callers since
parsing JavaScript text as a module vs global script as different semantics
(as defined in ECMAScript spec).

Differential Revision: https://phabricator.services.mozilla.com/D109974
2021-03-29 16:04:03 +00:00
Ted Campbell ad4995ae80 Bug 1701305 - Add char16_t overload for JS::Stencil API. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D109956
2021-03-29 16:04:02 +00:00
Liu Yu cae2b31f7a Bug 1638295 - [MIPS] Support inlining Atomics functions for BigInt64/BigUint64.r=lth
Inline Atomics.load, Atomics.store, Atomics.compareExchange,
Atomics.exchange and Atomics.{add,and,or,sub,xor}.

Differential Revision: https://phabricator.services.mozilla.com/D107366
2021-03-29 08:23:31 +00:00