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

70885 Коммитов

Автор SHA1 Сообщение Дата
Jan de Mooij 3542b77c41 Bug 1541404 part 34 - Fix BaselineDebugModeOSR to also recompile interpreter frames. r=tcampbell
This matches what we do for C++-interpreter frames in CollectInterpreterStackScripts and
SkipInterpreterFrameEntries. It's necessary for Interpreter => JIT OSR to work correctly.

This fixes remaining jit-test failures with --blinterp-eager

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

--HG--
extra : moz-landing-system : lando
2019-05-16 08:56:53 +00:00
Andy Wingo fe1a14680c Bug 1551128 - Limit result bit length in BigInt.asUintN on negative values r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D30874

--HG--
extra : moz-landing-system : lando
2019-05-16 07:39:14 +00:00
Jan de Mooij eec808b0b7 Bug 1541404 part 33 - Implement emitArgumentTypeChecks. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D31039

--HG--
extra : moz-landing-system : lando
2019-05-15 14:25:19 +00:00
Jan de Mooij 0232d57d94 Bug 1541404 part 31 - Fix record/replay instrumentation. r=bhackett
Differential Revision: https://phabricator.services.mozilla.com/D31036

--HG--
extra : moz-landing-system : lando
2019-05-15 14:25:19 +00:00
Jan de Mooij 9827d7d5c7 Bug 1541404 part 30 - Fix some debugger issues. r=tcampbell
With this we pass all debugger jit-tests.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 14:24:26 +00:00
Kagami Sascha Rosylight d0af199f76 Bug 1550949: Disallow time-only version of ISO8601 r=arai
ES5.1 removed time-only format T00:00:00 and no other browsers support it. So this diff removes the support from gecko.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 14:03:54 +00:00
Jan de Mooij d411f2814c Bug 1551140 - Add code coverage instrumentation to Baseline Interpreter. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D30877

--HG--
extra : moz-landing-system : lando
2019-05-15 06:50:13 +00:00
Jan de Mooij 9bc56c26d2 Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell
The code in NewArgumentsObject was wrong because the interpreter code calling it
also relies on the analysis having been performed.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 06:36:39 +00:00
Jan de Mooij e21ab3369d Bug 1541404 part 28 - Fix ARM issues. r=tcampbell
1. We can't use loadValue for JSOP_DOUBLE because on ARM that might use LDRD or
   LDM and these are not guaranteed to support unaligned loads. Fix is to add
   loadUnalignedValue that always uses plain 32-bit loads.

2. DebugTrapHandler's fast path for the interpreter used "lr" as second scratch
   register, clobbering the return address. The setSecondScratchRegister mechanism
   prevents this.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 07:42:50 +00:00
Jan de Mooij dc3e91574f Bug 1541404 part 27 - Implement emitInterpreterLoop. r=djvj
This is a basic threaded interpreter design. Performance is pretty good but we
can optimize it more in the future when everything else is in place.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 07:42:50 +00:00
Bogdan Tara 11cfa0462a Backed out changeset af0fd51dc41a (bug 1550757) for vrhost related mingw bustages CLOSED TREE 2019-05-15 08:28:00 +03:00
thomasmo 67eb9799f5 Bug 1550757 - Create new DLL for sharing VR code r=kip
This change introduces a new dll, vrhost, to make it easier to share
VR code across multiple process.
An executable, vrtesthost, is also added for testing purposes to
validate the DLL loads in a minimal environment.

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

--HG--
extra : moz-landing-system : lando
2019-05-14 18:07:26 +00:00
Ryan VanderMeulen 8f5477d25e Bug 1313741 - Use AppConstants in DOM and XPConnect tests instead of manual detection. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D30973

--HG--
extra : moz-landing-system : lando
2019-05-14 21:01:05 +00:00
Narcis Beleuzu 3e08d898d0 Backed out changeset bfa4ce8a0ef6 (bug 1551339) for bustages on vixl/MozAssembler-vixl.cpp . CLOSED TREE 2019-05-14 23:58:26 +03:00
Sean Stangl a59e6c161c Bug 1551339 - Update VIXL to recent Utils and Globals files. r=nbp
This is preliminary work to allowing encoding of JSCVTFP, the instruction that exists on new AArch64 devices that greatly speeds up websites that use floating-point math.

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

--HG--
extra : moz-landing-system : lando
2019-05-14 16:16:20 +00:00
Mihai Alexandru Michis d3fb62a0c3 Backed out 2 changesets (bug 1541404) for causing leaks at AnalyzeArgumentsUsage
Backed out changeset c4b0bd61050b (bug 1541404)
Backed out changeset 760cc10c63b0 (bug 1541404)

--HG--
extra : rebase_source : 3091181fa6591dc2e6706d0bd0358e67490088d2
2019-05-14 16:00:32 +03:00
Jan de Mooij 9abd541255 Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell
The code in NewArgumentsObject was wrong because the interpreter code calling it
also relies on the analysis having been performed.

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

--HG--
extra : moz-landing-system : lando
2019-05-14 10:36:17 +00:00
Jan de Mooij cae8345750 Bug 1541404 part 28 - Fix ARM issues. r=tcampbell
1. We can't use loadValue for JSOP_DOUBLE because on ARM that might use LDRD or
   LDM and these are not guaranteed to support unaligned loads. Fix is to add
   loadUnalignedValue that always uses plain 32-bit loads.

2. DebugTrapHandler's fast path for the interpreter used "lr" as second scratch
   register, clobbering the return address. The setSecondScratchRegister mechanism
   prevents this.

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

--HG--
extra : moz-landing-system : lando
2019-05-14 10:36:17 +00:00
Andreea Pavel ce824f4a16 Merge mozilla-central to autoland on a CLOSED TREE 2019-05-14 07:17:06 +03:00
Andreea Pavel 4bf5812d4c Merge mozilla-inbound to mozilla-central. a=merge 2019-05-14 07:10:36 +03:00
Jim Blandy 21848cbbd2 Bug 1546727: Remove extraneous 'inline' keywords, and add where missing. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D29113

--HG--
extra : moz-landing-system : lando
2019-05-14 02:55:56 +00:00
Jim Blandy 88a0ac1f0e Bug 1546727: Make DebuggerFrame_getScript a static method of DebuggerFrame. r=jorendorff
This function probably predates the existence of the DebuggerFrame class, and
was never moved in.

Depends on D28785

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

--HG--
extra : moz-landing-system : lando
2019-05-14 02:55:22 +00:00
Denis Palmeiro df482afef9 Bug 1550807 - Load the baselinescript into scratch1 before calling emitTraceLoggerResume r=jandem
Tracelogger is no longer functioning properly because of bad script event ids.  The baselinescript load into scratch1 was accidentally removed leading garbage script ids to be passed into emitTraceLoggerResume. This fix aims to simply reload the correct value back into scratch1 before calling tracelogger.

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

--HG--
extra : moz-landing-system : lando
2019-05-13 16:20:20 +00:00
Geoff Brown 167de4a58d Bug 1551226 - Run Android x86_64 7.0/debug mochitests; r=snorp
We can run /debug mochitests against geckoview for the cost of another dozen
or so test annotations. Both /opt and /debug mochitests are nearly worthy of
tier 1, but still waiting for bug 1534732.

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

--HG--
extra : moz-landing-system : lando
2019-05-13 20:52:36 +00:00
Boris Zbarsky 76cffb4a86 Bug 1551124. Add support for optional Array arguments in xpconnect. r=nika
The semantics are that you get an empty array if the argument is not supplied,
and if [optional_argc] is used it's set accordingly so you can tell whether you
were passed explicit [] or not passed anything.

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

--HG--
extra : moz-landing-system : lando
2019-05-13 19:51:57 +00:00
Jon Coppeard 6ff9c5c08a Bug 1464621 - Ensure we finish any ongoing incremental GC before collecting stats for memory reporting r=sfink?
Differential Revision: https://phabricator.services.mozilla.com/D30880

--HG--
extra : moz-landing-system : lando
2019-05-13 17:13:17 +00:00
Jon Coppeard b18d3a806e Bug 1550924 - Fix race condition in memory tracking assertion r=sfink?
Fix possible race condition where an atomic field that may be concurrently modified is referenced twice in an assertion expression.

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

--HG--
extra : moz-landing-system : lando
2019-05-13 17:10:19 +00:00
Iain Ireland fa6db29146 Bug 1548611: Update RNewArray::recover to match CodeGenerator::visitNewArrayCallVM r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D30393

--HG--
extra : moz-landing-system : lando
2019-05-10 09:59:50 +00:00
Jim Blandy fdab7786dc Bug 1546727: Make DebuggerFrame_requireLive and DebuggerFrame_checkThis member functions of DebuggerFrame. r=jorendorff
These function probably predate the existence of the DebuggerFrame class, and
were never moved in.

Depends on D28784

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

--HG--
extra : moz-landing-system : lando
2019-05-08 07:06:42 +00:00
Jim Blandy 31d57a4335 Bug 1546727: Make DebuggerFrame_maybeDecrementFrameScriptStepModeCount a method of DebuggerFrame. r=jorendorff
This function probably predates the existence of the DebuggerFrame class, and
was never moved in.

Depends on D28783

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

--HG--
extra : moz-landing-system : lando
2019-05-08 07:06:40 +00:00
Jim Blandy 30f53b9648 Bug 1546727: Make DebuggerFrame_trace and finalize static member functions of DebuggerFrame. r=jorendorff
SpiderMonkey standard practice for classes derived from JSObject defines
ClassOps hooks as static member functions.

Depends on D28782

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

--HG--
extra : moz-landing-system : lando
2019-05-08 07:06:38 +00:00
Tooru Fujisawa e21d6f4a03 Bug 1549953 - Add BinASTTokenReaderContext without implementation. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D30342

--HG--
extra : moz-landing-system : lando
2019-05-13 13:28:38 +00:00
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