Commit Graph

71055 Commits

Author SHA1 Message Date
Jan de Mooij
9df773da2b Bug 1552470 part 5 - Rename remaining js::TypeMonitorResult overload to TypeScript::MonitorBytecodeTypeSlow. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31610

--HG--
extra : moz-landing-system : lando
2019-05-23 07:11:19 +00:00
Jan de Mooij
e3ed48132f Bug 1552470 part 4 - Fold some js::TypeMonitorResult overloads into TypeScript::MonitorBytecodeType. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31609

--HG--
extra : moz-landing-system : lando
2019-05-23 07:11:07 +00:00
Jan de Mooij
1c7a3e3327 Bug 1552470 part 3 - Assert we have a JOF_TYPESET op in TypeMonitorResult. r=tcampbell
The "stubs used in compound opcodes" comment is obsolete (refered to some old
opcodes and JaegerMonkey).

This caught one problem, the interpreter called this for JSOP_RESUME.

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

--HG--
extra : moz-landing-system : lando
2019-05-23 07:10:47 +00:00
Jan de Mooij
2b79df85ac Bug 1552470 part 2 - Rename some TypeScript methods. r=tcampbell
SetThis -> MonitorThisType
SetArgument -> MonitorArgType
Monitor -> MonitorBytecodeType

This is consistent with the thisTypes/argTypes/bytecodeTypes accessors and will
avoid confusion when we rename TypeScript to JitScript.

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

--HG--
extra : moz-landing-system : lando
2019-05-23 07:10:17 +00:00
Jan de Mooij
3a3b3c836a Bug 1552470 part 1 - Make ThisTypes/ArgTypes/BytecodeTypes non-static methods. r=tcampbell
It makes the code a bit more natural.

The patch also changes these methods to take an AutoSweepTypeScript. This is more
correct and safe than what we did, because these methods return the TypeSet.

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

--HG--
extra : moz-landing-system : lando
2019-05-23 07:09:42 +00:00
Jan de Mooij
d733874de6 Bug 1551796 part 4 - Remove unnecessary hasJitScript() checks in BaselineInspector. r=tcampbell
These have been unnecessary since the ICScript introduction: when performing the
arguments analysis we have a JitScript but not a BaselineScript.

Depends on D32103

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

--HG--
extra : moz-landing-system : lando
2019-05-23 10:46:27 +00:00
Jan de Mooij
932197282d Bug 1551796 part 3 - Merge ICScript into JitScript. r=tcampbell
ICScript and JitScript had the same lifetime already, but this eliminates
a malloc/free and some extra dereferences (especially for accessing ICEntries
from Baseline Interpreter code).

This is just the minimal set of changes to make it easier to review. Follow-up
changes should:

* Move (now) JitScript methods to JitScript.cpp

* Merge FillBytecodeTypeMap with JitScript::initICEntries so we do just a single
  bytecode walk.

* Move JitScript from the js namespace to js::jit.

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

--HG--
extra : moz-landing-system : lando
2019-05-23 07:55:15 +00:00
Jan de Mooij
ed52e99739 Bug 1551796 part 2 - Move JitScript from vm/TypeInference.* to jit/JitScript.*. r=tcampbell
Some of the TypeInference-related static methods were kept in TypeInference-inl.h and
TypeInference.cpp because of various dependencies. Also, methods like JitScript::MonitorAssign
probably don't belong on JitScript anyway, but for now this seems reasonable.

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

--HG--
rename : js/src/vm/TypeInference-inl.h => js/src/jit/JitScript-inl.h
rename : js/src/vm/TypeInference.cpp => js/src/jit/JitScript.cpp
rename : js/src/vm/TypeInference.h => js/src/jit/JitScript.h
extra : moz-landing-system : lando
2019-05-22 20:04:25 +00:00
Jan de Mooij
d9d5e4ef64 Bug 1551796 part 1 - Rename TypeScript to JitScript. r=tcampbell
Also JSScript::makeTypes => JSScript::createJitScript for consistency with code
elsewhere.

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

--HG--
extra : moz-landing-system : lando
2019-05-23 07:28:00 +00:00
Jon Coppeard
142265f751 Bug 1553491 - Renumber MarkColor to match intuition that 'black' is more marked than 'gray' r=sfink?
Differential Revision: https://phabricator.services.mozilla.com/D32160

--HG--
extra : moz-landing-system : lando
2019-05-22 20:29:10 +00:00
Bogdan Tara
0043616f64 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-05-23 07:43:36 +03:00
Bogdan Tara
662de518b1 Merge inbound to mozilla-central. a=merge 2019-05-23 07:41:02 +03:00
Gurzau Raul
74c555539e Backed out 28 changesets (bug 1550422) for marionette AssertionError and failing browser_policy_hardware_acceleration.js on a CLOSED TREE.
Backed out changeset 5dd10a365ba9 (bug 1550422)
Backed out changeset 529f5be01ab9 (bug 1550422)
Backed out changeset b6861d3badf8 (bug 1550422)
Backed out changeset 059cff1a3dde (bug 1550422)
Backed out changeset 6ada1116b241 (bug 1550422)
Backed out changeset ca67e8e45262 (bug 1550422)
Backed out changeset a1961a51ae44 (bug 1550422)
Backed out changeset 1c90b9cb3ad4 (bug 1550422)
Backed out changeset 285fa46e4f26 (bug 1550422)
Backed out changeset e2938a444234 (bug 1550422)
Backed out changeset 7a930fc51125 (bug 1550422)
Backed out changeset 898ed02804fe (bug 1550422)
Backed out changeset e1b7abc99ae9 (bug 1550422)
Backed out changeset f781d415cef6 (bug 1550422)
Backed out changeset 2fef10a7cce5 (bug 1550422)
Backed out changeset ea64b4d8d4ff (bug 1550422)
Backed out changeset 86a8ba1b755c (bug 1550422)
Backed out changeset 9c0c9e80f309 (bug 1550422)
Backed out changeset 10c153ddbaea (bug 1550422)
Backed out changeset 60fe635ec2c9 (bug 1550422)
Backed out changeset a38796266b28 (bug 1550422)
Backed out changeset 2db647dcdf1c (bug 1550422)
Backed out changeset 952ddac02972 (bug 1550422)
Backed out changeset ba46b53643ec (bug 1550422)
Backed out changeset ca47ef6c59f7 (bug 1550422)
Backed out changeset f45f471a1a40 (bug 1550422)
Backed out changeset 371b4da5b771 (bug 1550422)
Backed out changeset 02fc78890032 (bug 1550422)
2019-05-23 05:59:44 +03:00
Paul Bone
752ec5c84c Bug 1552401 - Add and use a new decommit phase to attribute decommit work r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D32090

--HG--
extra : moz-landing-system : lando
2019-05-23 01:50:21 +00:00
Paul Bone
28a7458d74 Bug 1552401 - Make GenerateStatsPhases.py print the next available bucket number r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D32089

--HG--
extra : moz-landing-system : lando
2019-05-23 01:50:19 +00:00
Ashley Hauck
6a02746c8b Bug 1553543 - Don't touch file if there are no changes. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D32168

--HG--
extra : moz-landing-system : lando
2019-05-22 16:32:20 +00:00
Denis Palmeiro
a559bca492 Bug 1553362 - Add empty spew inline functions for when tracelogger is disabled r=iain
The new trace logger spew routines do not have a corresponding empty inline version for when --disable-trace-logging is used.

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

--HG--
extra : moz-landing-system : lando
2019-05-22 15:59:05 +00:00
Jean-Yves Avenard
d59781ac33 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

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

--HG--
extra : moz-landing-system : lando
2019-05-22 12:46:30 +00:00
Steve Fink
dcfb7afeb3 Bug 1553039 - default MOZ_GCTIMER output dir to MOZ_UPLOAD_DIR r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D31962

--HG--
extra : moz-landing-system : lando
2019-05-21 21:26:09 +00:00
Boris Zbarsky
47341d0933 Bug 1553276. Don't enter the content compartment when calling a Web IDL legacycaller over Xrays. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D32047

--HG--
extra : moz-landing-system : lando
2019-05-21 19:49:18 +00:00
Ashley Hauck
25e8d18679 Bug 1552229 - Emit field keys in correct order. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D31495

--HG--
extra : moz-landing-system : lando
2019-05-21 17:55:34 +00:00
Ashley Hauck
1b7568fdba Bug 1547467 - Introduce another scope for .initializers, and remove .localInitializers. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D29907

--HG--
extra : moz-landing-system : lando
2019-05-21 17:55:31 +00:00
Cosmin Sabou
7637a9982a Backed out changeset da42fc59d4fb (bug 1553039) for causing windows build bustages. 2019-05-21 20:28:34 +03:00
Steve Fink
2f66727254 Bug 1553039 - default MOZ_GCTIMER output dir to MOZ_UPLOAD_DIR r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D31962

--HG--
extra : moz-landing-system : lando
2019-05-21 16:53:05 +00:00
Denis Palmeiro
49502b1ffa Bug 1545091 - Spew tracelogger statistics with IONFLAGS=tracelogger r=iain,mstange
Add Jitspewing control for tracelogger data.  This can be enabled from the profiler or from the JS shell.  Usage is as follows:

From browser (ION_SPEW_FILENAME is recommended here so stdout doesn't get clobbered by each process):
  1.  JS_TRACE_LOGGING=1 IONFLAGS=tracelogger ION_SPEW_FILENAME=tracelogger ./mach run
  2.  Enable JSTracer feature in profiler addon
  3.  Start profiling and ctrl+shift+2 to view profile, and the data will be automatically spewed during profile collection.

From shell:
  1.  JS_TRACE_LOGGING=1 IONFLAGS=tracelogger dist/bin/js test.js
  2.  Data is automatically spewed to stdout when the shell exits, or use ION_SPEW_FILENAME.

There is an optional environment variable JS_TRACELOGGER_SPEW that can be used to emit specific events, for example JS_TRACELOGGER_SPEW="Interpreter,Baseline,GC" will emit only those specific events along with the script and self time of each script.

The structured spewer is also supported with SPEW=tracelogger, and this will emit the tracelogger data for every recorded event.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 15:25:32 +00:00
Jeff Walden
c08dac3312 Bug 1551916 - Flip column numbers back to being counts of code points and not code units. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31304

--HG--
extra : moz-landing-system : lando
2019-05-21 16:31:51 +00:00
Razvan Maries
9f162e29d0 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-05-21 19:36:25 +03:00
Andreea Pavel
a4546667a5 Backed out 2 changesets (bug 1551473, bug 1549954) win 2012 SM bustages on a CLOSED TREE
Backed out changeset aac842bf7f7b (bug 1551473)
Backed out changeset 2a4a5afa1ff2 (bug 1549954)
2019-05-21 19:30:36 +03:00
Razvan Maries
366383f783 Merge mozilla-inbound to mozilla-central a=merge 2019-05-21 19:29:01 +03:00
Jon Coppeard
0bbd4dc9f0 Bug 1549950 - Remove TraceWeakEdge and associated machinery and sweep weak pointers in lazy scripts explicitly r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D31804
2019-05-20 17:24:38 +01:00
Razvan Maries
fa4ff6f653 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-05-21 12:37:53 +03:00
Daniel Varga
f7e7132f8f Merge mozilla-central to mozilla-inbound 2019-05-21 07:22:34 +03:00
Daniel Varga
9c4661a44f Merge mozilla-central to mozilla-inbound. a=merge 2019-05-21 01:00:21 +03:00
Tooru Fujisawa
b41725bb4f Bug 1551473 - Provide utility methods to read brotli stream in BinASTTokenReaderContext. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31212

--HG--
extra : moz-landing-system : lando
2019-05-21 15:34:30 +00:00
Tooru Fujisawa
706c8c7b08 Bug 1549954 - Link in-tree brotli library if BinAST is enabled. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D30476

--HG--
extra : moz-landing-system : lando
2019-05-21 15:09:03 +00:00
Andrew McCreight
d1648e5525 Bug 1552597, part 2 - Handlify RemapAllWrappersForObject. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D31689

--HG--
extra : moz-landing-system : lando
2019-05-20 08:40:01 +00:00
Andrew McCreight
2184a00342 Bug 1552597, part 1 - Fix comments in RemapWrapper to say rewrap instead of wrap. r=jonco
These calls were changed from wrap() to rewrap() in bug 1291001.

Also, fix a minor typo in xpcprivate.h, because I didn't feel like
filing a separate bug for it.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 08:37:49 +00:00
Nicolas B. Pierron
d9f43206ff Bug 1550751 - Skip rounding the dividend of non-truncated integer division, as already handled by a bailout. r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D30672

--HG--
extra : moz-landing-system : lando
2019-05-20 13:02:43 +00:00
Matthew Gaudet
44540b2a3a Bug 1552316 - Disconnect initWithEnclosingScope from functionbox r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31537

--HG--
extra : moz-landing-system : lando
2019-05-21 13:47:50 +00:00
Matthew Gaudet
32b04894a8 Bug 1552316 - Don't rely on functionbox for initFromLazyFunction r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31536

--HG--
extra : moz-landing-system : lando
2019-05-21 13:47:44 +00:00
Matthew Gaudet
4fc4833da6 Bug 1552316 - Don't rely on functionbox in initWithEnclosingParseContext and initFiledInitializer r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31535

--HG--
extra : moz-landing-system : lando
2019-05-21 13:47:40 +00:00
Matthew Gaudet
e7bb4702b1 Bug 1552316 - Use functionbox directly in ASMJS r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31534

--HG--
extra : moz-landing-system : lando
2019-05-21 13:47:36 +00:00
Matthew Gaudet
f587c27271 Bug 1552316 - Use FunctionBox in ASTSerializer::function r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31533

--HG--
extra : moz-landing-system : lando
2019-05-21 13:47:31 +00:00
Matthew Gaudet
14adfcb8f2 Bug 1552316 - Use FunctionBox in ModuleBuilder r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31532

--HG--
extra : moz-landing-system : lando
2019-05-21 13:45:36 +00:00
Matthew Gaudet
35b6b4f5f2 Bug 1552316 - Hoist some queries from function into FunctionBox r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31530

--HG--
extra : moz-landing-system : lando
2019-05-21 13:45:21 +00:00
Matthew Gaudet
def2eac5e3 Bug 1552316 - Remove unused FunctionScope::Data::zone() r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D31529

--HG--
extra : moz-landing-system : lando
2019-05-21 13:45:01 +00:00
Jon Coppeard
22445824ad Bug 1537909 - Optimise external read barriers r=sfink?
Add a special path for the external read barrier API where we inline most of the checks and then always perform the barrier if we call into the engine.  This also skips dispatching on trace kind since we know the barrier tracer is always a GCMarker.

This is kind of hacky and I'm not sure how much it gains us (it's difficult to tell in profiles where GC may occur at different times).  What do you think?

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

--HG--
extra : moz-landing-system : lando
2019-05-20 17:58:16 +00:00
Jon Coppeard
ea2ed53caf Bug 1395509 - Remove existing malloc accounting for externally allocated memory r=sfink?
Since we now have precise memory accounting for externally allocated memory associated with GC things we should be able to remove use of the existing malloc counter here.  This should help with cases where we trigger too many GCs because we think there is more memory associated than there really is.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 17:27:02 +00:00
Jeff Walden
1e8a4f44fd Bug 1553001 - Move module APIs out of jsapi.{cpp,h} into js/public/Modules.h and js/src/vm/Modules.cpp for better isolation of module-related APIs. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31917

--HG--
rename : js/src/jsapi.h => js/public/Modules.h
rename : js/src/jsapi.cpp => js/src/vm/Modules.cpp
extra : moz-landing-system : lando
2019-05-21 00:57:38 +00:00
Tooru Fujisawa
d981862102 Bug 1551489 - Part 3: Support { format: "context" } in parseBin shell built-in. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31059

--HG--
extra : moz-landing-system : lando
2019-05-20 10:41:00 +00:00
Tooru Fujisawa
c51601c9c0 Bug 1551489 - Part 2: Instantiate BinASTParser<BinASTTokenReaderContext>. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31058

--HG--
extra : moz-landing-system : lando
2019-05-20 10:40:42 +00:00
Tooru Fujisawa
e3b85ebbb9 Bug 1551489 - Part 1: Fix BinAST build script to invoke mach clang-format properly. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31057

--HG--
extra : moz-landing-system : lando
2019-05-20 10:40:21 +00:00
Tooru Fujisawa
7a073706d3 Bug 1551509 - Make BinASTTokenReaderBase::{readConst,matchConst} accept char>=0x80. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31055

--HG--
extra : moz-landing-system : lando
2019-05-20 10:40:03 +00:00
Tooru Fujisawa
eb742449ca Bug 1551501 - Fix BinASTTokenReaderContext::readVarU32 to match encoder. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31054

--HG--
extra : moz-landing-system : lando
2019-05-20 10:39:45 +00:00
Tooru Fujisawa
e5a6a8ae9a Bug 1551470 - Add Context parameter to BinASTTokenReaderContext methods. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D31053

--HG--
extra : moz-landing-system : lando
2019-05-20 10:39:33 +00:00
Edgar Chen
e336502f67 Bug 1549351 - Promise rejection event should not be sent for cross-origin scripts; r=smaug,till
Differential Revision: https://phabricator.services.mozilla.com/D31565

--HG--
extra : moz-landing-system : lando
2019-05-19 01:18:04 +00:00
Dorel Luca
0ad8df273d Backed out 2 changesets (bug 1552229, bug 1547467) for causing build bustages. CLOSED TREE
Backed out changeset a8f5dec91d72 (bug 1552229)
Backed out changeset 6004e7f60bb6 (bug 1547467)

--HG--
extra : amend_source : 45537a3eef627d29fa248d1dcd164576bae1d85f
2019-05-21 00:32:14 +03:00
Ashley Hauck
75dc4381a5 Bug 1551454 - Don't name field initializer lambdas. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D31500

--HG--
extra : moz-landing-system : lando
2019-05-20 18:35:21 +00:00
Ashley Hauck
5b2a4e74f3 Bug 1552229 - Emit field keys in correct order. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D31495

--HG--
extra : moz-landing-system : lando
2019-05-20 18:36:33 +00:00
Ashley Hauck
1910d07e93 Bug 1547467 - Introduce another scope for .initializers, and remove .localInitializers. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D29907

--HG--
extra : moz-landing-system : lando
2019-05-20 18:38:03 +00:00
Brian Hackett
f828f39c0f Bug 1518308 - Include unaliased module scope variables in debug environments, r=jonco.
--HG--
extra : rebase_source : 56628c29b91f95b729e330999b28303fccce77f8
extra : histedit_source : b989d867dab8ef7909c98a8aa1f24372399db876
2019-05-15 07:14:28 -10:00
Brendan Dahl
543c10a1d2 Bug 1551320 - Replace all CreateElement calls in XUL documents with CreateXULElement. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D31295

--HG--
extra : moz-landing-system : lando
2019-05-20 16:50:28 +00:00
Gurzau Raul
e0cadccc1d Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-20 16:49:58 +03:00
Jon Coppeard
b485ece003 Bug 1552180 - Poison Arena's zone pointer on free r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D31494
2019-05-16 17:26:20 +01:00
Jon Coppeard
c4cef85c43 Bug 1552118 - Don't release foreground finalized arenas until the end of sweeping the zone group r=sfink
This releases all foreground finalized arenas at the end of sweeping the sweep group rather than at the end of sweeping the zone (for objects) or immediately (for everything else) as happens currently.  This simplifies the code in a couple of places and I don't think it will have any noticeable effects.

Differential Revision: https://phabricator.services.mozilla.com/D31415
2019-05-16 12:26:02 +01:00
Jon Coppeard
29b9b0dcd4 Bug 1551907 - Fix interaction between gray unmarking and weakmap marking r=sfink
We shouldn't allow a weak map to become gray after it has already been marked black.

Differential Revision: https://phabricator.services.mozilla.com/D31412
2019-05-16 11:40:09 +01:00
Jon Coppeard
6832b3f753 Bug 1551275 - Refactor jsapi weak map tests r=sfink
This removes a bunch of repeated code and hopefully makes it easier to see what we're testing.  When marking two things the same color this now checks both orders (e.g. key before map, map before key).  I removed individual test cases and generate all possiblities with for loops.  The expected marking state is determined by functions factored out from the verifier.

The tests for JS WeakMap and internal weakmaps are slightly different because I wanted to cover all existing test cases without making things too complicated.  This means we don't test marking the key and delegate different colors for the former.

Differential Revision: https://phabricator.services.mozilla.com/D30948
2019-05-13 19:08:10 +01:00
Jeff Walden
8b511ad882 Bug 1552977 - Use non-inflating UTF-8 compilation in various C++ testing contexts. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31882

--HG--
extra : moz-landing-system : lando
2019-05-21 01:32:02 +00:00
Jeff Walden
38ead4474b Bug 1552977 - Add JS::EvaluateUtf8PathDontInflate that doesn't inflate UTF-8 file contents to UTF-16 before evaluating them. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31881

--HG--
extra : moz-landing-system : lando
2019-05-21 01:31:53 +00:00
Jeff Walden
bf9676ac23 Bug 1552977 - Add JS::CompileUtf8PathDontInflate with clear non-inflating nature and make existing JS::CompileUtf8Path callers inflate again. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31880

--HG--
extra : moz-landing-system : lando
2019-05-21 01:31:33 +00:00
Nicolas B. Pierron
85124b1e85 Bug 1523568 - ARM64: Implement divisions by a constant. r=sstangl
Differential Revision: https://phabricator.services.mozilla.com/D31805

--HG--
extra : moz-landing-system : lando
2019-05-27 16:36:26 +00:00
Jan de Mooij
12e6a5f9bd Bug 1554080 part 5 - Replace the masm.loadJitCodeNoArgCheck in GenerateImportJitExit with a TLS load. r=bbouvier
This way we have two loads instead of three.

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

--HG--
extra : moz-landing-system : lando
2019-05-27 14:14:46 +00:00
Jan de Mooij
512fc542c0 Bug 1554080 part 4 - Store JitScript* instead of BaselineScript* in FuncImportTls. r=bbouvier
This has a few benefits:

* Less toggling when we discard/reallocate the BaselineScript without discarding
  the JitScript.

* Wasm's JIT exit optimization will work with the Baseline Interpreter in the
  future.

* The next part will use this to eliminate a load.

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

--HG--
extra : moz-landing-system : lando
2019-05-27 14:08:23 +00:00
Jan de Mooij
170b670145 Bug 1554080 part 3 - Use UniquePtr for BaselineScript::dependentWasmImports_. r=bbouvier
Differential Revision: https://phabricator.services.mozilla.com/D32443

--HG--
extra : moz-landing-system : lando
2019-05-27 14:08:07 +00:00
Jan de Mooij
5c629bbbc5 Bug 1554080 part 2 - Allow Wasm FFI calls to lazy link stub. r=bbouvier
The lazy link stub used to assume a JIT caller but this is no longer the case.
We can then fold clearDependentWasmImports into unlinkDependentWasmImports.

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

--HG--
extra : moz-landing-system : lando
2019-05-27 14:07:51 +00:00
Jan de Mooij
e87b1bd88f Bug 1554080 part 1 - Move jitCodeSkipArgCheck_ from JSScript to JitScript. r=bbouvier,iain
This removes a word from JSScript and corresponding Wasm data structures.

Furthermore, the skip-argument-type-checks optimization depends on JitScript's
lifetime so moving it to JitScript feels right and might help catch bugs.

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

--HG--
extra : moz-landing-system : lando
2019-05-27 14:07:32 +00:00
Boris Zbarsky
6b623aa87a Bug 1554223. Add a version of JS::NewFunctionFromSpec that does not require passing an id. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D32527

--HG--
extra : moz-landing-system : lando
2019-05-27 13:26:04 +00:00
Cosmin Sabou
c1685882cc Merge mozilla-central to mozilla-inbound. 2019-05-24 12:56:42 +03:00
Jeff Walden
aaacc748f6 Bug 1552979 - Define off-thread compilation APIs, of modules and scripts, for UTF-8. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D32409

--HG--
extra : rebase_source : 5c16d4e548caeccab4287889b9655ec5bed050ef
2019-05-23 19:33:36 -07:00
Ciure Andrei
ffde88d233 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-05-24 07:03:28 +03:00
Jeff Walden
4169070923 Bug 1552979 - Add a JS::CompileModule overload for direct UTF-8 compilation. r=arai
--HG--
extra : rebase_source : d63374cb56fab0a5077202462a07f2083229a5ab
2019-05-21 15:39:05 -07:00
Jeff Walden
964550bb3e Bug 1552979 - Make JS::CompileModule return the module directly, rather than by outparam duplicative of a boolean return value. r=arai
--HG--
extra : rebase_source : e5db95557dd8c1c3712395a0141badd6e8edbc8e
2019-05-21 10:21:56 -07:00
Jeff Walden
3a69834cbc Bug 1552979 - Begin fleshing out off-thread script/module compilation support for UTF-8. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31896

--HG--
extra : rebase_source : dda3b1ae77361a5ab0a0ad52c0beaf7498553c20
2019-05-18 16:46:38 -07:00
Jeff Walden
e85889f5df Bug 1552979 - Add ParseModule and CompileModule overloads for UTF-8. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31895

--HG--
extra : rebase_source : 3e5089c028f295b1b837d0e8d003e87d6daa3891
2019-05-20 02:49:20 -07:00
Jeff Walden
462cc759d4 Bug 1552979 - Rename one CompileModule overload to ParseModule to make it easier to distinguish them, both mentally and in searches. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31894

--HG--
extra : rebase_source : b925cffe35dfd8045c094af1652eaad96e7cea63
2019-05-20 02:42:16 -07:00
Jeff Walden
e80581731f Bug 1552979 - Make StartOffThreadParseTask accept UniquePtr<ParseTask> and not just a raw ParseTask* borrowed (gulp) from one. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31890

--HG--
extra : rebase_source : 41e17e169215cee75b68152c0d4945704b0e2e64
2019-05-19 01:06:35 -07:00
Jeff Walden
fbcf9d0b7a Bug 1552979 - Templatize {Script,Module}ParseTask by Unit as a step toward enabling off-thread parsing of UTF-8 source. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31889

--HG--
extra : rebase_source : 94d8b13f48df0ba00f120c9324a3c8e9f6ce20bc
2019-05-18 17:09:16 -07:00
Ciure Andrei
1f4007dfc0 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-05-24 01:38:06 +03:00
Daniel Varga
2056f57259 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-05-23 19:03:36 +03:00
Jon Coppeard
6d785a4384 Bug 1395509 - Pack MemoryTracker hashtable keys into a single word on 64bit platforms r=sfink
This code is debug-only, but it seems a shame to waste have this key structure take up two words when it will fix into one. This also moves the MemoryUse enum definition to gc/GCEnum.h.

Differential Revision: https://phabricator.services.mozilla.com/D32170
2019-05-22 17:45:03 +01:00
Sylvestre Ledru
fb63889274 Bug 1552430 - Fix some typos using codespell trunk r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D31589

--HG--
extra : moz-landing-system : lando
2019-05-17 15:56:50 +00:00
thomasmo
5436d3561e 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-17 04:53:16 +00:00
Kagami Sascha Rosylight
1cf88b074c Bug 1551893: Require strict zero-pad for time element if T exists r=arai
Make T as a strictness marker for ISO8601 time element, as it already does for the date element.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 18:02:58 +00:00
Jeff Walden
9c0ef78bad Bug 1551916 - Add a boolean to every chunk for a long-line vector indicating whether that chunk contains any multiple-unit code points, so that column computations inside wholly-single-unit chunks can do a constant-time pointer-range computation... r=arai
...and avoid iterating at all.  r=arai

Depends on D31302

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

--HG--
extra : moz-landing-system : lando
2019-05-17 03:21:06 +00:00
Jeff Walden
d18c7116eb Bug 1551916 - Optimize column-number computations for offsets more than |ColumnChunkLength = 128| code units into a line by saving column information at 128-unit increments (rounded down to the nearest code point start) so that at most (length of... r=arai
...longest code point encoding - 1) + ColumnChunkLength - 1 units must be observed when computing a column number.  r=arai

Depends on D31301

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

--HG--
extra : moz-landing-system : lando
2019-05-17 03:21:04 +00:00
Jeff Walden
069de399d8 Bug 1551916 - Make JS_COLUMN_DIMENSION_IS_CODE_POINTS a no-argument macro function so that calling it before its definition is an error, and move it upward in TokenStream.h so it's defined in places where subsequent changes will need it. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31301

--HG--
extra : moz-landing-system : lando
2019-05-17 03:21:02 +00:00
Jeff Walden
39cf0106b2 Bug 1551916 - Remove |TokenStreamAnyChars::undoInternalUpdateLineInfoForEOL| as unused. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31300

--HG--
extra : moz-landing-system : lando
2019-05-17 03:20:58 +00:00
Ashley Hauck
52555469e6 Bug 1552022 - Pass through arguments in synthesized constructors for derived classes. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D31507

--HG--
extra : moz-landing-system : lando
2019-05-16 20:54:39 +00:00
Csoregi Natalia
60874606d0 Merge mozilla-central to autoland. CLOSED TREE 2019-05-17 00:58:59 +03:00
Csoregi Natalia
8ef3142853 Merge inbound to mozilla-central. a=merge 2019-05-17 00:55:45 +03:00