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

70848 Коммитов

Автор SHA1 Сообщение Дата
Tooru Fujisawa 66e25f6243 Bug 1549340 - Part 2: Use union instead of reinterpret_cast to initialize const char* with symbol for JSPropertySpec.name. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D30493

--HG--
extra : moz-landing-system : lando
2019-05-13 10:26:48 +00:00
Jon Coppeard dd05bccccd Bug 1542184 - Use PersistentRooted for rooting vectors of GC things from rust code r=fitzgen?
This replaces the use of heap-alloced Rooted with PersistentRooted which is safe wrt destruction order.

I had to add PersistentRooted and StackGCVector to OPAQUE_TYPES to make this work... I'm not really sure what this does.

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

--HG--
extra : moz-landing-system : lando
2019-05-10 17:36:34 +00:00
Coroiu Cristina c139f7f6fe Backed out 5 changesets (bug 1546138) for bustage at js/src/jit-test/tests/wasm/funcref.js for upcoming beta
Backed out changeset 13e26dbd7cc7 (bug 1546138)
Backed out changeset edf39b4a6ec1 (bug 1546138)
Backed out changeset b60f1ed65b1a (bug 1546138)
Backed out changeset da9544b976b1 (bug 1546138)
Backed out changeset 77be2a536573 (bug 1546138)

--HG--
extra : rebase_source : 7469677612ed4684d340da11776e8e412dd4995b
2019-05-13 08:38:11 +03:00
Jeff Walden cf27ea3740 Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30579

--HG--
extra : moz-landing-system : lando
2019-05-12 22:15:51 +00:00
Jeff Walden 8196e85e16 Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30578

--HG--
rename : js/src/builtin/ModuleObject.h => js/src/vm/ModuleBuilder.h
extra : moz-landing-system : lando
2019-05-12 22:15:49 +00:00
Jeff Walden bc6017efb3 Bug 1550616 - Move Token-related types to a new frontend/Token.h header so needing something like TokenPos doesn't demand a dependency on TokenStream.h. (ParseNode.h is a notable instance of this.) r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30577

--HG--
rename : js/src/frontend/TokenStream.h => js/src/frontend/Token.h
extra : moz-landing-system : lando
2019-05-12 22:15:47 +00:00
Jeff Walden 1fd3b365cb Bug 1550616 - Make SharedContext.h not #include TokenStream.h now that it doesn't depend on it. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30576

--HG--
extra : moz-landing-system : lando
2019-05-12 22:14:29 +00:00
Jeff Walden 44a17d854c Bug 1550616 - Make FunctionBox::setEnd take the actual uint32_t end, not TokenStreamAnyChars&, and add ParserBase::setFunctionEndFromCurrentToken that calls it passing the correct value, to eliminate another SharedContext.h dependency on... r=tcampbell
...TokenStream.h.  r=tcampbell

Depends on D30574

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

--HG--
extra : moz-landing-system : lando
2019-05-12 22:14:11 +00:00
Jeff Walden 655d6e356a Bug 1550616 - Move GeneralTokenStreamChars::setFunctionStart to GeneralParser::setFunctionStartAtCurrentToken in Parser.cpp, eliminating one reason SharedContext.h depends on TokenStream.h. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30574

--HG--
extra : moz-landing-system : lando
2019-05-12 22:13:53 +00:00
Kagami Sascha Rosylight 47625af531 Bug 1500748 - Require standard compliance when a time part exists r=arai
Differential Revision: https://phabricator.services.mozilla.com/D30761

--HG--
extra : moz-landing-system : lando
2019-05-12 10:23:14 +00:00
Noemi Erli 900e1d1a0e Backed out 6 changesets (bug 1550616) for causing build bustages in MacroAssembler-arm64.h
Backed out changeset f1a3220fc10b (bug 1550616)
Backed out changeset b435e9bb58cc (bug 1550616)
Backed out changeset 1b35028d64e4 (bug 1550616)
Backed out changeset 5fd47cd91b82 (bug 1550616)
Backed out changeset 59f2744f50c5 (bug 1550616)
Backed out changeset dc57399bbbe3 (bug 1550616)
2019-05-12 05:09:23 +03:00
Jeff Walden a1ec048c2b Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30579

--HG--
extra : moz-landing-system : lando
2019-05-12 01:39:24 +00:00
Jeff Walden 646492945b Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30578

--HG--
rename : js/src/builtin/ModuleObject.h => js/src/vm/ModuleBuilder.h
extra : moz-landing-system : lando
2019-05-12 01:39:15 +00:00
Jeff Walden 255be22c2a Bug 1550616 - Move Token-related types to a new frontend/Token.h header so needing something like TokenPos doesn't demand a dependency on TokenStream.h. (ParseNode.h is a notable instance of this.) r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30577

--HG--
rename : js/src/frontend/TokenStream.h => js/src/frontend/Token.h
extra : moz-landing-system : lando
2019-05-12 01:38:54 +00:00
Jeff Walden c162440a04 Bug 1550616 - Make SharedContext.h not #include TokenStream.h now that it doesn't depend on it. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30576

--HG--
extra : moz-landing-system : lando
2019-05-12 01:38:40 +00:00
Jeff Walden 8c3bcd64f2 Bug 1550616 - Make FunctionBox::setEnd take the actual uint32_t end, not TokenStreamAnyChars&, and add ParserBase::setFunctionEndFromCurrentToken that calls it passing the correct value, to eliminate another SharedContext.h dependency on... r=tcampbell
...TokenStream.h.  r=tcampbell

Depends on D30574

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

--HG--
extra : moz-landing-system : lando
2019-05-12 01:38:24 +00:00
Jeff Walden 04812304af Bug 1550616 - Move GeneralTokenStreamChars::setFunctionStart to GeneralParser::setFunctionStartAtCurrentToken in Parser.cpp, eliminating one reason SharedContext.h depends on TokenStream.h. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30574

--HG--
extra : moz-landing-system : lando
2019-05-12 01:38:06 +00:00
Razvan Maries 6d2cd4ea8b Merge mozilla-inbound to mozilla-central a=merge 2019-05-11 12:28:35 +03:00
Jim Blandy e22c732ca4 Bug 1451268: RematerializedFrames may not be cached, even when younger frames are. r=jorendorff
If the Debugger API tries to inspect or modify an IonMonkey frame, much of
the information it expects to find in a frame is missing: function calls
may have been inlined, variables may have been optimized out, and so on. So
when this happens, SpiderMonkey builds one or more Rematerialized frames
from the IonMonkey frame, using metadata built by Ion to reconstruct the
missing parts. The Rematerialized frames are now the authority on the state
of those frames, and the Ion frame is ignored: stack iterators ignore the
Ion frame, producing the Rematerialized frames in their stead; and when
control returns to the Ion frame, we pop it, rebuild Baseline frames from
the Rematerialized frames, and resume execution in Baseline.

Thus, Rematerialized frames are always created with their
hasCachedSavedFrame bits clear: although there may be extant SavedFrames
built from the original IonMonkey frame, the Rematerialized frames will not
have cache entries for them until they are traversed in a capture themselves.

This means that, oddly, it is not always true that, once we reach a frame
with its hasCachedSavedFrame bit set, all its parents will have the bit set
as well. However, clear bits under younger set bits will only occur on
Rematerialized frames.

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

--HG--
extra : moz-landing-system : lando
2019-05-11 02:17:04 +00:00
Jeff Walden 353b248b45 Bug 1548729 - Move SourceHook-related functionality into its own public header for reduced dependencies. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D29781

--HG--
rename : js/src/jsfriendapi.h => js/public/experimental/SourceHook.h
rename : js/src/jsfriendapi.cpp => js/src/vm/SourceHook.cpp
extra : moz-landing-system : lando
2019-05-10 23:38:56 +00:00
Coroiu Cristina d2d1ba5805 Backed out changeset 45ff6c2d30e5 (bug 1548729) for SpiderMonkey failure at build/src/js/src/vm/SourceHook.cpp 2019-05-11 02:15:15 +03:00
Jeff Walden 684ce81117 Bug 1548729 - Move SourceHook-related functionality into its own public header for reduced dependencies. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D29781

--HG--
rename : js/src/jsfriendapi.h => js/public/experimental/SourceHook.h
rename : js/src/jsfriendapi.cpp => js/src/vm/SourceHook.cpp
extra : moz-landing-system : lando
2019-05-10 22:42:27 +00:00
Daniel Varga 84647fc525 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-05-11 00:53:46 +03:00
Daniel Varga bfc993c71e Merge mozilla-inbound to mozilla-central. a=merge 2019-05-11 00:48:13 +03:00
Jeff Walden d33e37d1c6 Bug 1549758 - Revert column-number counts to counts of code units for release-or-beta, pending perf considerations in column-number counting being fixed. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D30717

--HG--
extra : moz-landing-system : lando
2019-05-10 21:32:31 +00:00
Daniel Varga 860854d157 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-05-11 00:51:51 +03:00
Jon Coppeard b5c54bbc69 Bug 1550734 - Clarify the purpose and implementation of FreeOp::freeLater r=sfink DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D30667
2019-05-10 17:47:39 +01:00
Jon Coppeard 34abf9ea7c Bug 1395509 - Track malloc memory associated with strings r=jandem
This adds memory tracking for string contents while leaving the current scheme in place for the time being.

Differential Revision: https://phabricator.services.mozilla.com/D30517
2019-05-09 16:23:52 +01:00
Jon Coppeard 615ae8a035 Bug 1395509 - Track malloc memory associated with array buffers r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D30516
2019-05-09 16:15:28 +01:00
Jon Coppeard 0a4878d01f Bug 1395509 - Add FreeOp methods free memory and update memory accounting r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D30515
2019-05-09 13:19:35 +01:00
Jon Coppeard c88dcc846e Bug 1395509 - Add APIs to track internal memory assocated with GC things r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D30514
2019-05-09 13:13:09 +01:00
Ashley Hauck 881711d67c Bug 1550628 - Correctly handle OOM. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D30597

--HG--
extra : moz-landing-system : lando
2019-05-10 01:08:35 +00:00
Brindusan Cristian 7f7d7f6a70 Backed out changeset e925cef1cadf (bug 1549326) for mochitest assertion failures at nsContentSecurityManager.cpp:205. CLOSED TREE 2019-05-09 21:05:40 +03:00
Jim Blandy 65825b234f Bug 1546817: Refactor and document Debugger support in js::CrossCompartmentKey. r=sfink
This replaces the various Debugger-related member classes in
js::CrossCompartmentKey with a series of small structs that can be used directly
as alternatives in CrossCompartmentKey::WrappedType. Thus, instead of having a
two-level tag --- the Variant tag, and then for DebuggerAndObject case, a
DebuggerObjectKind value --- the Variant tag can do all the work by itself.

This also tightens up the types a bit: choosing the wrong DebuggerObjectKind
would be a silent error, but using the wrong constructor might get you a type
error (although unfortunately some of the types are not as specific as you might
hope: NativeObject instead of WasmInstanceObject, for example).

A new comment explains the rationale for giving Debugger API objects entries in
the wrapper map.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 17:38:13 +00:00
Jonas Allmann 4b72fd9bba Bug 1549326 - Remove simpletest.js from eval()-whitelist, r=ckerschb
Amend several test files for triggering eval() assertion through simpletest.js

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

--HG--
extra : moz-landing-system : lando
2019-05-09 16:02:49 +00:00
Jon Coppeard 75bfdb344c Bug 1549853 - Ignore associations of zero bytes of malloc memory with a GC thing r=sfink?
Differential Revision: https://phabricator.services.mozilla.com/D30355

--HG--
extra : moz-landing-system : lando
2019-05-08 17:46:02 +00:00
Jon Coppeard 94e50ef5a8 Bug 1549986 - Make all concrete implementations of JSTracer final to aid devirtualization r=sfink?
Differential Revision: https://phabricator.services.mozilla.com/D30362

--HG--
extra : moz-landing-system : lando
2019-05-09 08:39:23 +00:00
Csoregi Natalia e3fa16f6f6 Backed out changeset 1760c6913c09 (bug 1549340) for rust bustage. CLOSED TREE
--HG--
extra : rebase_source : 19015aa11df57b8026881f6a86a4714887ec0244
2019-05-10 18:16:09 +03:00
Tooru Fujisawa 9fa8a62e9e Bug 1549340 - Part 2: Use union instead of reinterpret_cast to initialize const char* with symbol for JSPropertySpec.name. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D30493

--HG--
extra : moz-landing-system : lando
2019-05-10 14:08:07 +00:00
Jan de Mooij ec3c97e6aa Bug 1541404 part 26 - Some JSOP_FORCEINTERPRETER changes. r=tcampbell
Initially the plan was for the Baseline Interpreter to "support"
JSOP_FORCEINTERPRETER like the C++ interpreter. However this complicated
many things:

* We needed to do a VM call to allocate a TypeScript when we resumed
  generators (the only place where it was needed).

* This meant our Baseline Interpreter warm-up heuristics didn't apply to
  generators.

* It complicates the profiler work because it assumes all Baseline Interpreter
  frames have a TypeScript.

We've been moving towards making the Baseline Interpreter more like the JITs
for now (requiring a TypeScript instead of a BaselineScript) so I think this is
the right move until we change that.

This also improves things for the Baseline Compiler: we now have a MOZ_CRASH
instead of an abort.

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

--HG--
extra : moz-landing-system : lando
2019-05-10 09:55:47 +00:00
Jan de Mooij 96ba66dc5e Bug 1541404 part 25 - Various minor changes. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D29993

--HG--
extra : moz-landing-system : lando
2019-05-10 09:55:51 +00:00
Jan de Mooij 5568dfb812 Bug 1541404 part 23 - Implement more BaselineInterpreterGenerator bits. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D29989

--HG--
extra : moz-landing-system : lando
2019-05-10 09:55:49 +00:00
Jan de Mooij 98ef613802 Bug 1541404 part 22 - Add BaselineInterpreterGenerator::emitDebugTrap. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D29818

--HG--
extra : moz-landing-system : lando
2019-05-10 09:55:47 +00:00
Jan de Mooij 779c4b8c29 Bug 1541404 part 21 - Interpreter DebugTrapHandler changes. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D29804

--HG--
extra : moz-landing-system : lando
2019-05-10 09:54:04 +00:00
Andy Wingo 8e09a45a19 Bug 1550679 - Remove duplicate typedef in ARM assembler r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D30617

--HG--
extra : moz-landing-system : lando
2019-05-10 09:16:02 +00:00
Yu Yin c099ddd8e0 Bug 1549667 - [mips] Fix unaligned load with sign/zero extend. r=lth
Reviewers: jandem, lth

Reviewed By: lth

Subscribers: jandem

Bug #: 1549667

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

--HG--
extra : rebase_source : 1180d03984603a0498ad2f9f3dda8d907be85f6f
extra : histedit_source : 3dfd9666c1d43f521a1a147a6cfa60c23ec3b54e
2019-05-10 10:07:37 +03:00
Yu Yin 0031f427be Bug 1549667 - [mips] skip tests which need --spectre-XXX on. r=jandem
Reviewers: jandem, lth

Reviewed By: jandem

Subscribers: jandem

Bug #: 1549667

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

--HG--
extra : rebase_source : e2cc787ad197133ad42db69d7764fb0087692cc6
extra : histedit_source : adfe73fcd2873bfdde700e8e896fe7aa44759e0e
2019-05-10 10:04:16 +03:00
Yu Yin e8cbe26ad1 Bug 1549667 - [mips64] Adding missing 'breaks' to 'switch' statements. r=jandem
Reviewers: jandem

Reviewed By: jandem

Subscribers: jandem

Bug #: 1549667

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

--HG--
extra : rebase_source : 711093d29d76785f39f40612842cc3c32f434386
extra : histedit_source : 3ad96abcee5e8e78e89881ed503dd88bb72a8eb8
2019-05-10 10:01:37 +03:00
Yu Yin d44a2cb3af Bug 1549667 - [mips] Add function cmp32Move{32,ptr}. r=jandem
Reviewers: jandem

Reviewed By: jandem

Subscribers: jandem

Bug #: 1549667

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

--HG--
extra : rebase_source : 93fdc529b2d5eba55e3fb46e83b4505f130d21e3
extra : histedit_source : 2e9265823073bb40111034d1bdac58ddf6162ef4
2019-05-10 09:58:48 +03:00
Csoregi Natalia 77e6476b50 Backed out 4 changesets (bug 1549667) for missing reviewers. CLOSED TREE
Backed out changeset b0a2912f83a9 (bug 1549667)
Backed out changeset acf19aefc4d2 (bug 1549667)
Backed out changeset 5d580fa5d753 (bug 1549667)
Backed out changeset b661a2bf1626 (bug 1549667)
2019-05-10 09:56:29 +03:00