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

66827 Коммитов

Автор SHA1 Сообщение Дата
André Bargull a3ac4f5799 Bug 1485066 - Part 6: Reduce char-string-char roundtrips when quoting strings. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull 2f89e85896 Bug 1485066 - Part 5: Use js::EncodeLatin1/StringToNewUTF8CharsZ instead of JS_EncodeString[ToUTF8] for engine internal code. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull c11a158038 Bug 1485066 - Part 4: Replace AtomToPrintableString UniqueChars out-param with UniqueChars return-type. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull fbb9b6014c Bug 1485066 - Part 3: Replace calls to JS_EncodeString for string comparison with StringEqualsAscii. r=Waldo 2018-09-05 01:25:09 -07:00
André Bargull 6818f52f11 Bug 1485066 - Part 2: Use UniqueChars as return-type in functions previously using JSAutoByteString out-param. r=Waldo 2018-09-05 01:25:09 -07:00
André Bargull e4d1d98f88 Bug 1485066 - Part 1: Remove JSAutoByteString. r=Waldo 2018-09-05 02:25:42 -07:00
Lars T Hansen 7f29922ce1 Bug 1487329 - test that ion-compiled code does not blow up when --wasm-gc is enabled. r=bbouvier
--HG--
extra : rebase_source : 758fa53fc50b4587cd2684f6756eae7a0548ade4
2018-09-04 09:26:47 +02:00
Lars T Hansen ae8df55a5e Bug 1487329 - Select wasm baseline compiler if content opts into gc types. r=bbouvier
Creates a level of indirection to encapsulate the compilation
parameters (mode, tier, debug, gc-enabled) so as to allow their
computation to be delayed.  This centers on the new struct
CompilerEnvironment, defined in WasmValidate.h.

After this change, compiler selection is driven by the presence of the
gc-feature-opt-in section.  We finalize the values in
CompilerEnvironment after having parsed that section.  (That parsing
is still under #ifdef.)

--wasm-gc is still used as a higher-level control; if it is not
present there will be no gc support at all.  But once we remove that
flag, very little will change here; all code that reads that flag can
instead pass HasGcTypes::True, and compiler selection will be entirely
driven by the presence of the opt-in section.

There are a few too many uses of HasGcTypes::False here; most of these
will disappear along with the --wasm-gc flag.

--HG--
extra : rebase_source : cbbc09dc7b1ae7777b66c8ba4b1c39c3e4195c46
2018-09-03 20:02:38 +02:00
Cosmin Sabou 1f0a42def4 Backed out 14 changesets (bug 1485066) for build bustages on MessageManagerFuzzer. CLOSED TREE
Backed out changeset e40f67f15bf1 (bug 1485066)
Backed out changeset f09bc4d5fdcc (bug 1485066)
Backed out changeset 939e27aa2d59 (bug 1485066)
Backed out changeset d50fcf82556c (bug 1485066)
Backed out changeset 5cbc0ae0117a (bug 1485066)
Backed out changeset 09b5382e0baf (bug 1485066)
Backed out changeset 6676e8fedcb3 (bug 1485066)
Backed out changeset 28e7e61c11ec (bug 1485066)
Backed out changeset b08b0cfc1dbe (bug 1485066)
Backed out changeset 8defc9eabfac (bug 1485066)
Backed out changeset bf167b0a3af3 (bug 1485066)
Backed out changeset 4f89260d5e30 (bug 1485066)
Backed out changeset c22fc17c9d87 (bug 1485066)
Backed out changeset d35bb63dbc1d (bug 1485066)
2018-09-05 15:54:03 +03:00
André Bargull 00ec163a07 Bug 1485066 - Part 14: Change FormatStackDump to return UTF-8 encoded strings. r=Waldo 2018-09-05 01:25:12 -07:00
André Bargull afc9d7226c Bug 1485066 - Part 13: Use JS_ReportErrorNumberASCII when the error arguments are guaranteed to be ASCII characters. r=Waldo 2018-09-05 01:25:12 -07:00
André Bargull f5787fc732 Bug 1485066 - Part 12: Change the decompiler to return UTF-8 encoded strings. r=Waldo 2018-09-05 01:25:12 -07:00
André Bargull ceccb59fda Bug 1485066 - Part 11: Remove the unused |inBuf| argument from JS::FormatStackDump and change it to use Sprinter. r=Waldo 2018-09-05 03:01:23 -07:00
André Bargull 2f63260ab2 Bug 1485066 - Part 10: Remove ValueToPrintable{Latin1,UTF8}, add IdToPrintableUTF8. r=Waldo 2018-09-05 01:25:11 -07:00
André Bargull 2d594ec24f Bug 1485066 - Part 9: Additional miscellaneous clean-ups around EncodeString callers. r=Waldo 2018-09-05 01:25:11 -07:00
André Bargull 89416b7fd4 Bug 1485066 - Part 8: Rename JS_EncodeString to JS_EncodeStringToLatin1. r=Waldo 2018-09-05 02:26:49 -07:00
André Bargull 7298c34efe Bug 1485066 - Part 7: Miscellaneous clean-up for engine internal EncodeString callers. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull d44cea7da7 Bug 1485066 - Part 6: Reduce char-string-char roundtrips when quoting strings. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull 1db5787efc Bug 1485066 - Part 5: Use js::EncodeLatin1/StringToNewUTF8CharsZ instead of JS_EncodeString[ToUTF8] for engine internal code. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull 9fe137dae0 Bug 1485066 - Part 4: Replace AtomToPrintableString UniqueChars out-param with UniqueChars return-type. r=Waldo 2018-09-05 01:25:10 -07:00
André Bargull 76789014b1 Bug 1485066 - Part 3: Replace calls to JS_EncodeString for string comparison with StringEqualsAscii. r=Waldo 2018-09-05 01:25:09 -07:00
André Bargull f291cc119f Bug 1485066 - Part 2: Use UniqueChars as return-type in functions previously using JSAutoByteString out-param. r=Waldo 2018-09-05 01:25:09 -07:00
André Bargull 775b7277cc Bug 1485066 - Part 1: Remove JSAutoByteString. r=Waldo 2018-09-05 02:25:42 -07:00
Jon Coppeard 783a08f9f7 Bug 1488461 - Clean up unnecessary casting in scope tracing code r=sfink 2018-09-05 11:27:40 +01:00
Jon Coppeard a35ba4da50 Bug 1488463 - Handle OOM in RegExpShared::compile() r=nbp 2018-09-05 11:25:36 +01:00
Margareta Eliza Balazs b5430ee4da Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-09-05 15:42:52 +03:00
Gary Kwong edc15db338 Bug 1488553 - Comment out --gc-zeal flags r=jandem
Comment out --gc-zeal flags

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

--HG--
extra : moz-landing-system : lando
2018-09-05 10:25:55 +00:00
Bogdan Tara f302cbb0b3 Merge inbound to mozilla-central. a=merge 2018-09-05 02:24:27 +03:00
Bogdan Tara 8b38c1ae85 Merge autoland to mozilla-central. a=merge 2018-09-05 01:53:44 +03:00
Sebastian Hengst 5a18fb5aee Backed out changeset c91d997687bf (bug 1487327) for busting beta. a=backout 2018-09-04 20:07:59 +03:00
Mark Banner 56437d9aed Bug 1488445 - Change the ESLint configuration to extend from eslint:recommended. r=mossop
This enables the following extra rules over the current configuration:

- for-direction
- no-compare-neg-zero
- no-new-symbol
- no-this-before-super

Other rules that are in eslint:recommended but not in our configuration are turned off for now.

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

--HG--
extra : moz-landing-system : lando
2018-09-04 18:08:41 +00:00
Jan de Mooij 53f1370b5f Bug 1267297 - Use AutoEntryScript for script activity bookkeeping instead of the request machinery. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D4085

--HG--
extra : moz-landing-system : lando
2018-09-04 16:59:56 +00:00
Jan de Mooij 56ca0b122a Bug 1487238 - Do realm checks instead of compartment checks in the expression decompiler code. r=luke
Another option is to allow same-compartment realms here, but this seems simpler and safer (to ensure we don't leak any information in document.domain cases or if we ever change from CPO to something else). A principals check is probably not worth the complexity.

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

--HG--
extra : moz-landing-system : lando
2018-09-04 14:07:28 +00:00
Ciure Andrei c3fef66a5b Merge inbound to mozilla-central. a=merge 2018-09-03 18:40:13 +03:00
Emilio Cobos Álvarez e7f946a575 Bug 1488172 - Update bindgen in js/rust as well. r=me
Upstream already uses this version of bindgen.
2018-09-03 14:13:36 +02:00
Brian Hackett 8b21da2df9 Bug 1486556 - Avoid unlocking the helper thread state lock after looking for tasks to perform, r=jandem.
--HG--
extra : rebase_source : 1e5d20a7fbda4b982a83615fe52f2981ea8e2a80
2018-08-31 05:21:44 -10:00
Lars T Hansen f76e9e4445 Bug 1487327 - Custom section for opting in to GC feature work. r=luke
We introduce a new numbered section which must be the first section in
the .wasm file if it is present at all.  This section, GcFeatureOptIn,
carries the version number of the GC feature the module wants to opt
in to.

During validation we signal an error if we can't satisfy the
requirement; and we signal errors for all the GC feature aspects
(anyref, ref, struct, and all the ref-type instructions) if no opt-in
section was present.

This patch does not affect how we generate code for stubs; that code
is controlled by the --wasm-gc flag, as it is module-independent.

This patch also does not change how we choose the compiler; that is
still based on --wasm-gc.  But once --wasm-gc disappears we will be
using the opt-in section to control compiler selection until Ion can
support the GC feature.

Currently the only supported GC feature version is 1.  As the engine
evolves to accomodate new versions we will accept old version numbers
provided the engine remains completely backward compatible.  (We can
also provide version-triggered backward compatibility but I question
the utility.)

--HG--
extra : rebase_source : 65f5af647d851beadd4c743821f4546abe6e8b3e
2018-08-31 08:50:24 +02:00
Brian Hackett b6e6c95bc0 Bug 1479909 Part 3 - Disable DOM Ion optimizations when recording or replaying, r=bz.
--HG--
extra : rebase_source : 6ed5bc0e1dbc3a1e53b6fa5411a85e5c5f264271
extra : histedit_source : 93d762ec8c21ea54c8a21450bd16a9349a10918f
2018-08-30 11:59:56 -10:00
Jon Coppeard 94de12ac30 Bug 1487662 - Refactor OOMTest and related functions r=nbp 2018-09-03 11:14:32 +01:00
Nicolas B. Pierron 377826f0ef Bug 1488386 - Only keep memory protection for IonMonkey lifo alloc chunks going off-thread. r=tcampbell 2018-09-07 12:12:24 +02:00
Bogdan Tara dc4c75c15a Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-09-07 06:41:52 +03:00
Nicholas Nethercote 563171857f Bug 1488628 - Change nsIConsoleMessage.message to an AString. r=erahm
--HG--
extra : rebase_source : e43aec79e309936e17d475b8c50559767538c18d
2018-09-05 13:31:42 +10:00
Jan de Mooij cbb67627a3 Bug 722345 part 3 - Remove request API. r=luke
Differential Revision: https://phabricator.services.mozilla.com/D4424

--HG--
extra : rebase_source : 1842588c00dbc8fb4294ce5436cdb787190909b4
2018-08-28 09:53:30 +02:00
Jan de Mooij d2d2258af8 Bug 722345 part 2 - Remove AutoCheckRequestDepth, rename CHECK_REQUEST to CHECK_THREAD. r=luke
Differential Revision: https://phabricator.services.mozilla.com/D4423

--HG--
extra : rebase_source : e5712d78ba6708f3a6292b331b0ebe7adfa04004
2018-08-28 10:02:11 +02:00
Jan de Mooij 87fd4c54ee Bug 722345 part 1 - Remove now unused activity callback API. r=luke
Differential Revision: https://phabricator.services.mozilla.com/D4422

--HG--
extra : rebase_source : 9ce41912ccf67c95240abb2961b1dffa5b03fe6d
2018-08-28 09:19:17 +02:00
Dorel Luca 98478024d2 Backed out 2 changesets (bug 1487329) for build bustages in builds/worker/workspace/build/src/js/src/wasm/WasmValidate.h. CLOSED TREE
Backed out changeset 0c373148a649 (bug 1487329)
Backed out changeset 7e8d4a168960 (bug 1487329)
2018-09-05 12:08:09 +03:00
Lars T Hansen ae3c52079b Bug 1487329 - test that ion-compiled code does not blow up when --wasm-gc is enabled. r=bbouvier
--HG--
extra : rebase_source : c7dbb1381910fd482b7132664448315a7b79897d
2018-09-04 09:26:47 +02:00
Lars T Hansen 680fd3178c Bug 1487329 - Select wasm baseline compiler if content opts into gc types. r=bbouvier
Creates a level of indirection to encapsulate the compilation
parameters (mode, tier, debug, gc-enabled) so as to allow their
computation to be delayed.  This centers on the new struct
CompilerEnvironment, defined in WasmValidate.h.

After this change, compiler selection is driven by the presence of the
gc-feature-opt-in section.  We finalize the values in
CompilerEnvironment after having parsed that section.  (That parsing
is still under #ifdef.)

--wasm-gc is still used as a higher-level control; if it is not
present there will be no gc support at all.  But once we remove that
flag, very little will change here; all code that reads that flag can
instead pass HasGcTypes::True, and compiler selection will be entirely
driven by the presence of the opt-in section.

There are a few too many uses of HasGcTypes::False here; most of these
will disappear along with the --wasm-gc flag.

--HG--
extra : rebase_source : d2c2bd01309124caaa66f13564be2bcf24f34946
2018-09-03 20:02:38 +02:00
Kris Maglione 3d172327cd Bug 1486249: Part 1 - Automatically convert JS iterators to nsISimpleEnumerators at XPConnect boundary. r=mccr8
This allows JS callers and C++ callers to both create and consumer iterators
in their preferred style, while still presenting the appropriate interfaces to
callers in the other language.

When a C++ caller requires an nsISimpleEnumerator from an XPCWrappedJS object,
if that class does not already have a QueryInterface method, it is assumed to
be a JS enumerator, and an appropriate wrapper is created. JS callers who wish
to implement nsISimpleEnumerator manually, or opt out of the automatic
conversions, may implement a QueryInterface method, which automatically opts
them out of this behavior.

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

--HG--
extra : rebase_source : eb61ee725a8c67e3e7f5b22d9aef9baa0cde1955
2018-08-25 18:18:10 -07:00
Thi Huynh 1d21d7489f Bug 1483962 - Move helpers of LocalTime UTC TimeZoneComment functions to DateTimeHelper. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D3901

--HG--
extra : moz-landing-system : lando
2018-08-25 08:37:55 +00:00
Benjamin Bouvier f9add1d7c5 Bug 1469027: Move wasm types shared with Cranelift in a WasmBinaryConstants.h; r=luke
--HG--
rename : js/src/wasm/WasmBinaryConstants.h => js/src/wasm/WasmConstants.h
extra : rebase_source : 7bade4016a164959d3c9627ac1d4608e2b8e99d7
extra : histedit_source : af4150ae80ebe8abe0e73725400e3d8780e2ba60
2018-09-07 18:30:06 +02:00
Benjamin Bouvier 5a8d6c8eac Bug 1469027: Add a --wasm-force-cranelift flag to the shell; r=luke
--HG--
extra : rebase_source : f41aceb2ffd8c002b05593983cf428618ee135fb
extra : histedit_source : c645382205fc5aabd27f17d22d5ce5bed29b1493
2018-09-07 13:42:16 +02:00
Tom Schuster b634bd0348 Bug 1486397 - Split entries vector in JSStructuredCloneWriter. r=jandem
--HG--
extra : rebase_source : c9977aa0402b85b950bfcc3b7c99a99dddf9065c
2018-08-28 17:41:14 +02:00
Cosmin Sabou c8483bebfa Merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : gfx/doc/AsyncPanZoom-HighLevel.png => gfx/docs/AsyncPanZoomArchitecture.png
rename : gfx/doc/silkArchitecture.png => gfx/docs/SilkArchitecture.png
rename : gfx/doc/README.webrender => gfx/webrender_bindings/README.webrender
2018-09-01 12:27:26 +03:00
Gary Kwong 4413a6ebd2 Bug 1471136 - Summary: Update fuzzer shell flags combinations r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D4055

--HG--
extra : moz-landing-system : lando
2018-09-01 00:44:41 +00:00
Sebastian Hengst 4f39161869 Backed out 18 changesets (bug 1487647, bug 1487271, bug 1487001, bug 1487105, bug 1486845, bug 1485738, bug 1487595, bug 1347060, bug 1480900, bug 1487889) for accidential push of inbound to central. a=backout
Backed out changeset 331706d8558f (bug 1487595)
Backed out changeset d78b833293db (bug 1487595)
Backed out changeset f292ef31ef0b (bug 1487595)
Backed out changeset ef8c5c529210 (bug 1486845)
Backed out changeset 9cbc8592d649 (bug 1487889)
Backed out changeset 05a0118455e4 (bug 1487105)
Backed out changeset 78b8ff889992 (bug 1487105)
Backed out changeset 5a55e5b74107 (bug 1480900)
Backed out changeset ea2402bdef40 (bug 1347060)
Backed out changeset 3f831b709e37 (bug 1485738)
Backed out changeset d1c29bfb5ea9 (bug 1480900)
Backed out changeset 8e60483ec824 (bug 1480900)
Backed out changeset 328589a86dd1 (bug 1487647)
Backed out changeset d974ef1647f3 (bug 1480900)
Backed out changeset 0509636cc5d5 (bug 1487001)
Backed out changeset c57165730494 (bug 1487271)
Backed out changeset a55d81761fc4 (bug 1480900)
Backed out changeset eaa2d0e9b62d (bug 1480900)

--HG--
rename : gfx/docs/AsyncPanZoomArchitecture.png => gfx/doc/AsyncPanZoom-HighLevel.png
rename : gfx/webrender_bindings/README.webrender => gfx/doc/README.webrender
rename : gfx/docs/SilkArchitecture.png => gfx/doc/silkArchitecture.png
2018-09-01 02:01:23 +03:00
Denis Palmeiro 766a623449 Bug 1485738: Add column number information to the JitSpew r=mgaudet
Summary: It is currently quite difficult to debug minified scripts.  The JitSpew and profiler used to display only line numbers, so all of the output would be emitted as "script:1".  Column number information is now collected by the gecko profiler as of bug 785922.  The JitSpew should also emit column numbers so that it's easy to line up with the profiler output.

Reviewers: mgaudet

Reviewed By: mgaudet

Subscribers: jandem

Bug #: 1485738

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

--HG--
extra : source : 3f831b709e370b14ccf9f06508760633cd6b312a
2018-08-31 22:59:42 +03:00
Denis Palmeiro 5c580903b2 Bug 1485738: Add column number information to the JitSpew r=mgaudet
Summary: It is currently quite difficult to debug minified scripts.  The JitSpew and profiler used to display only line numbers, so all of the output would be emitted as "script:1".  Column number information is now collected by the gecko profiler as of bug 785922.  The JitSpew should also emit column numbers so that it's easy to line up with the profiler output.

Reviewers: mgaudet

Reviewed By: mgaudet

Subscribers: jandem

Bug #: 1485738

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

--HG--
extra : rebase_source : b88732f8eccbbe712d3f42fc79b6c8019d294991
extra : histedit_source : 8d23b4b62549462444d267ba695a878a04ff896d
2018-08-31 22:59:42 +03:00
Diego Pino Garcia 04ac107fa0 Bug 1486125 - Remove JSContext::noGCOrAllocationCheck and its helper methods. r=jonco 2018-09-03 03:20:00 +03:00
Narcis Beleuzu 36a56411ed Backed out changeset 015d294ad0ea (bug 1488395) for spidermokey failures 2018-09-04 16:26:31 +03:00
Lars T Hansen 6f702cee0c Bug 1488395 - Fix ifdefs around a nightly-only feature. r=me 2018-09-04 14:20:21 +02:00
Jan de Mooij 92a1dd14a2 Bug 1484905 - Don't mark MGetFirstDollarIndex as movable. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D4879

--HG--
extra : rebase_source : f897bf525e37e16abd6bb6669d5a711a7c8c73bd
extra : amend_source : 9dffa1a44ee0efe596d0294a1a9958a8a454e2e8
2018-09-03 17:30:55 +02:00
Jon Coppeard 1a2b3f0804 Bug 1488227 - Don't set shell exit code during OOM testing r=nbp 2018-09-04 10:05:17 +01:00
Jon Coppeard af073d5466 Bug 1488173 - Define constructor property last in DefineConstructorAndPrototype r=jandem 2018-09-04 10:04:51 +01:00
Tom Schuster 3b7a466c3a Bug 1440468 - Proxied functions can't be passed to Function.prototype.toString.call(). r=anba
--HG--
extra : rebase_source : 072f9a5fae3b19e98be278db0c28027473189f24
extra : histedit_source : fd500751ba230f29c8b779a9a410a441710f0dd8
2018-09-03 15:18:12 +02:00
Jeff Walden 7fa99adb7e Bug 1487815 - Compute LifoAlloc chunk-size in a manner that doesn't invoke UB. r=tcampbell 2018-09-06 21:37:07 -07:00
Andreea Pavel 5d1bd3c504 Backed out changeset 4bb16d5fe593 (bug 1487815) for build bustages on a CLOSED TREE 2018-09-08 02:12:19 +03:00
Kris Maglione a4a6e3ecd9 Bug 1489532: Check for nsISimpleEnumerator wrapper before searching existing tear-offs. r=mccr8
When an XPC wrapped JS object returns an object from a property or function
which is expected to return a given interface, we create a wrapper for that
interface regardless of whether the object has a QueryInterface method which
claims to support it. For the nsISimpleEnumerator enumerator case, the check
for that existing wrapper comes before the check for the nsISimpleEnumerator
special casing, which breaks automatic conversion in those cases.

This patch moves that check just before the check for the existing wrapper,
and just after the nsIPropertyBag special casing, which has similar semantics.

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

--HG--
extra : rebase_source : 2201063455a2434cfa0c3c470f668fefa8528f4b
2018-09-07 15:17:56 -07:00
Jeff Walden 525e73f352 Bug 1487815 - Compute LifoAlloc chunk-size in a manner that doesn't invoke UB. r=tcampbell 2018-09-06 21:37:07 -07:00
Jeff Walden 327a90245e Bug 1487136 - Make OwningCompileOptions::setFile(JSContext*, const char*) MOZ_MUST_USE. r=kmag on fixing the one user requiring any changes, r=me on the obviously-justified attribute-addition
--HG--
extra : rebase_source : 53f22d0cb6f68fcdf93bd9cbf7e5e3b559a50611
2018-08-28 14:54:20 -05:00
Daniel Varga 73bcb55c27 Backed out 4 changesets (bug 1442587) for SM build bustages on a CLOSED TREE
Backed out changeset 7e7d80003930 (bug 1442587)
Backed out changeset 217ce4f92eb9 (bug 1442587)
Backed out changeset 60a28b2e2493 (bug 1442587)
Backed out changeset f88b838fa1b4 (bug 1442587)
2018-09-08 01:19:55 +03:00
Daniel Varga f62c999a8d Merge mozilla-central to mozilla-inbound
--HG--
extra : rebase_source : 3825f1263f779efcb8dca836b3de0571b536d98e
2018-09-08 01:13:18 +03:00
Andreea Pavel 35892b565d Backed out changeset a5b2607fc188 (bug 1434391) for failing linux sm build bustages on a CLOSED TREE 2018-09-08 00:58:58 +03:00
Jason Orendorff 5d863a2bc0 Bug 1487799 - Remove JOF_LEFTASSOC. r=nbp 2018-08-31 10:18:47 -05:00
Jason Orendorff 8b118a6d08 Bug 1467272 - Memory leak with OOM in js::jit::CodeGenerator::link(JSContext*, js::CompilerConstraintList*). r=nbp 2018-08-31 11:52:40 -05:00
Jason Orendorff e60a9b6fa5 Bug 1442587 - Part 4: Ban js::Vector<Value>. r=sfink
--HG--
extra : histedit_source : 2a8dcb014e5b453fb8d6eaaba348f3303138f99b
2018-08-30 15:30:50 -05:00
Jason Orendorff e2887e4d5c Bug 1442587 - Part 3: Avoid Vector<Value> in the front end. r=Waldo
--HG--
extra : histedit_source : bbac493a444b7a11fb481457198d55264cf6bcf1
2018-08-30 15:28:32 -05:00
Jason Orendorff 6c6c97aed2 Bug 1442587 - Part 2: Avoid Vector<Value> in JSONParser. r=Waldo
--HG--
extra : histedit_source : b6ba025abfec70fae396d48989bc12d544ca3c35
2018-08-30 13:24:15 -05:00
Jason Orendorff 364fe7f818 Bug 1442587 - Part 1: Avoid Vector<Value> in JSObject::swap. r=Waldo
--HG--
extra : histedit_source : 6b9df6294f87a0c9b8b13271a107a2e273fed5bf
2018-08-30 12:54:56 -05:00
Jason Orendorff c7030e9201 Bug 1434391 - Fix OOM handling bug in Debugger (and eliminate an unnecessary wrap() call). r=jimb 2018-08-30 11:09:46 -05:00
Nathan Froyd 9a3c7abf0a Bug 1489601 - fix thinko in AtomicOperations-arm64-msvc.h; r=lth 2018-09-07 15:05:35 -04:00
Jon Coppeard 735b1f4791 Bug 1487346 - Fix JS lint error on a CLOSED TREE r=me 2018-08-31 13:21:31 +01:00
Jon Coppeard 689203ee58 Bug 1487483 - Tidy adding store buffer entries when creating an edge to a cell in the nursery r=sfink 2018-08-31 12:55:31 +01:00
Jon Coppeard 2338383583 Bug 1487346 - Replace shell module loader property with a hook function r=anba 2018-08-31 12:55:05 +01:00
Bogdan Tara ba6cae21b7 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-09-05 02:45:18 +03:00
André Bargull 82fc23137b Bug 1488191: Call into the VM only once to determine the TypedArray type for TypedArraySort. r=jandem
--HG--
extra : rebase_source : c3115f63798a62fc9fef89dd6f038884d96c3395
2018-09-03 08:05:40 -07:00
André Bargull eacdd2c298 Bug 1488192: Return input if no characters were modified in decode/encodeURI. r=jandem
--HG--
extra : rebase_source : d350e59d4d2fc57f0dfe6878dccefeab75158107
2018-09-03 05:33:41 -07:00
Luke Wagner 3b0a4f9931 Bug 1330661 - Baldr: move LinkData out of Module (r=lth)
--HG--
extra : rebase_source : e562bfa9a4200e5c3b7a82d42b2f62aca58035dc
2018-09-04 16:46:52 -05:00
Luke Wagner 109280bf02 Bug 1330661 - Baldr: make the BuildIdOp a process global (r=lth,mccr8)
--HG--
extra : rebase_source : 0388505583fb0b445f989e3a8b97ec861ed62499
2018-09-04 14:25:57 -05:00
Luke Wagner c0aa80a617 Bug 1330661 - Baldr: move Assumptions out of Module (r=lth)
--HG--
extra : rebase_source : 7f19de5d639149a89ad07d99c12b6d1121c538e1
2018-09-04 14:23:10 -05:00
Luke Wagner 2fd51c9f01 Bug 1330661 - Baldr: move static functions in WasmCompile.cpp to be closer to their first use (r=lth)
--HG--
extra : rebase_source : 19a1ce1f58505d8367536a8951649ddba4076229
2018-09-04 14:21:03 -05:00
Luke Wagner 5332c049ea Bug 1330661 - Baldr: remove some dead wasm-IDB code (r=lth)
--HG--
extra : rebase_source : c3412bf27bb02eb8ac34d04d953e2234eb9729f1
2018-09-04 14:19:55 -05:00
Jan de Mooij df77c423a5 Bug 1490594 - Always use braces for if/for/while statements in jsapi-tests. r=luke
Differential Revision: https://phabricator.services.mozilla.com/D5649

--HG--
extra : rebase_source : 91fc6c048c077c12a9326cb6825ea9e12158764d
2018-09-12 14:23:43 +00:00
Gurzau Raul aac7b0e28e Merge mozilla-central to autoland. a=merge CLOSED TREE
--HG--
extra : rebase_source : 65beac4828b738076ffbb0776a83c466f997902f
2018-09-12 15:41:28 +03:00
Jon Coppeard 28b1389ea7 Bug 1490390 - Add an option to make oomTest keep failing after the initial simulated failure r=nbp 2018-09-12 14:58:05 +01:00
Margareta Eliza Balazs f79a9159ca Backed out 2 changesets (bug 1485224) for perma bc3 failures e.g.: Error getting fileid for Z:\task_1536750533ad] WARNING: NS_ENSURE_TRUE CLOSED TREE
Backed out changeset fe2c607f4af7 (bug 1485224)
Backed out changeset f7a6e536532e (bug 1485224)
2018-09-12 15:37:19 +03:00
Masatoshi Kimura c7adec1ec3 Bug 1485224 - Update Windows builders to VS 2017 Update 8 and Windows SDK 17134. r=glandium
--HG--
extra : source : 2face0081dbf1ba256f6f533eea8b865e8360b78
2018-09-07 07:15:19 +09:00
shindli 53d4f9c065 Backed out 2 changesets (bug 1489793) for failures in editor/spellchecker/tests/test_bug1219928.html
Backed out changeset 9d793ccd3fca (bug 1489793)
Backed out changeset 30219dab424e (bug 1489793)
2018-09-12 05:59:31 +03:00
Ehsan Akhgari d536808f38 Bug 1489793 - Part 1: Remove the XPCOM component registration for EditorSpellCheck; r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D5371
2018-09-11 19:17:46 -04:00
Lars T Hansen 733ceb52ce Bug 1487327 - Custom section for opting in to GC feature work. r=luke
We introduce a new numbered section which must be the first section in
the .wasm file if it is present at all.  This section, GcFeatureOptIn,
carries the version number of the GC feature the module wants to opt
in to.

During validation we signal an error if we can't satisfy the
requirement; and we signal errors for all the GC feature aspects
(anyref, ref, struct, and all the ref-type instructions) if no opt-in
section was present.

This patch does not affect how we generate code for stubs; that code
is controlled by the --wasm-gc flag, as it is module-independent.

This patch also does not change how we choose the compiler; that is
still based on --wasm-gc.  But once --wasm-gc disappears we will be
using the opt-in section to control compiler selection until Ion can
support the GC feature.

Currently the only supported GC feature version is 1.  As the engine
evolves to accomodate new versions we will accept old version numbers
provided the engine remains completely backward compatible.  (We can
also provide version-triggered backward compatibility but I question
the utility.)

--HG--
extra : rebase_source : 5fac967236009019e4588226182706ca0543801f
2018-08-31 08:50:24 +02:00
Jesse Schwartzentruber f832b4022e Bug 1475573 - Create --enable-fuzzing debug build job for Android x86 firefox. r=nalexander,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D2428

--HG--
extra : moz-landing-system : lando
2018-08-31 03:35:20 +00:00
Gurzau Raul 09fe34b331 Merge inbound to mozilla-central. a=merge 2018-08-31 00:49:36 +03:00
Jon Coppeard 3921ce61cc Bug 1486782 - Remove unnecessary includes of gc/Zone.h r=sfink 2018-08-30 20:10:21 +01:00
Jon Coppeard 0d4da8dae6 Bug 1486730 - Remove some unnecessary includes from js/src/frontend r=Waldo 2018-08-30 20:10:20 +01:00
Myk Melez 7978cd2fe4 Bug 1482810 - set COMPILE_FLAGS var to hide warnings for Rust crates r=chmanchester
In conjunction with the cc crate changes in https://github.com/alexcrichton/cc-rs/pull/342 (which I'll land in https://phabricator.services.mozilla.com/D4699), this hides warnings generated by C code in Rust crates (by removing warnings flags from CFLAGS when compiling Rust libraries).

MozReview-Commit-ID: 9CZgLGbWjbA

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

--HG--
extra : moz-landing-system : lando
2018-08-30 17:29:54 +00:00
Brian Hackett d2583e1176 Backed out changeset fc437d64c831 (bug 1486556) for breaking coordination between record/replay system and helper threads.
--HG--
extra : rebase_source : 6fd771863bd14d659661553667396458c9c24eec
2018-08-30 04:24:58 -10:00
Jon Coppeard 61e5b63a8e Bug 1485698 - Check for no module meta object during JIT analysis r=jandem 2018-08-30 19:38:27 +01:00
Jon Coppeard fcea90a450 Bug 1487384 - Remove unnecessary references to Runtime::gc in GCRuntime methods r=sfink 2018-08-30 17:51:53 +01:00
Brian Hackett 4a9125345e Bug 1486556 - Avoid unlocking the helper thread state lock after looking for tasks to perform, r=jandem.
--HG--
extra : rebase_source : eda9bd0e02be2e52c08b69c1c9c1dcfd263e232b
2018-08-29 16:43:52 -10:00
Jan de Mooij 6feb6ba772 Bug 1481793 part 5 - Use JSObject::nonCCWRealm instead of JSObject::deprecatedRealm in JSContext::enterRealmOf. r=luke 2018-08-30 09:27:10 +02:00
Ms2ger 49ce0e4018 Bug 1486383 - Fix relative paths in the jstests support for external scripts in wpt tests; r=bbouvier 2018-08-30 12:10:49 +02:00
Chris Peterson c69c4c3f74 Bug 1481097 - js: Build Array.cpp and JSAtom.cpp in unified mode. r=djvj
This gcc 4.8.2 workaround (from bug 942421) is no longer needed because Firefox currently requires gcc 6.1 or later (as of bug 1444274).

--HG--
extra : source : cdc1d262eccb9d5fcd8f89e7514abc625e61c185
extra : histedit_source : e42d518cf586af1bdc45636541d5e136a2c2bfb8
2018-07-22 00:09:46 -07:00
Ehsan Akhgari 6bbaf2cf8c Bug 1489147 - Remove the XPCOM component registration for nsXPConnect; r=mccr8
We move the XPConnect() singleton accessor to nsIXConnect to make it available for consumers outside of XPConnect.  Most of the consumers of the singleton accessor just need the nsIXPConnect public interface, except for the IsShuttingDown() member which this patch adds to nsIXPConnect as well.

Differential Revision: https://phabricator.services.mozilla.com/D5151
2018-09-06 16:39:35 -04:00
arthur.iakab 044707fc78 Merge inbound to mozilla-central a=merge 2018-08-30 07:37:00 +03:00
Emilio Cobos Álvarez 75bea4ec60 Bug 1486623 - Skip less nodes when reporting memory, and report ShadowRoot's StyleSheets. r=bzbarsky
This moves all the node-specific reporting to nsIDocument.

OrphanReporter delegates all the reporting to that and then returns the sum of
all sizes, which is not ideal but was pre-existing.

Also, I moved the main mStyleSheets size reporting to DocumentOrShadowRoot for
it to be shared between document and ShadowRoot.

I'll add memory reporting for the computed stylesheet maps and such in the
ShadowRoot in a followup.

I went through all the XBL bindings, though it seems I could just use
GetBindingWithContent(), since according to:

  https://searchfox.org/mozilla-central/rev/55da592d85c2baf8d8818010c41d9738c97013d2/dom/xbl/nsXBLBinding.cpp#615

We don't allow multiple bindings to contribute anon content. Anyway it was the
same amount of code...

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

--HG--
extra : moz-landing-system : lando
2018-08-29 22:19:42 +00:00
arthur.iakab 32fbca3814 Merge inbound to mozilla-central a=merge 2018-08-30 00:56:06 +03:00
Carl Corcoran 7da8e04c87 Bug 1467736: Add support for DllBlocklist_Shutdown;r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D4544

--HG--
extra : moz-landing-system : lando
2018-08-29 18:49:49 +00:00
Cosmin Sabou 55bf096f3d Merge mozilla-inbound to mozilla-central. a=merge 2018-08-29 20:34:13 +03:00
André Bargull b82c20b28b Bug 1487023: Replace the self-hosted SameValue function with Object.is. r=mgaudet 2018-08-29 02:41:28 -07:00
arthur.iakab c9d7c4fa05 Merge mozilla-central to mozilla-inbound 2018-08-30 01:16:38 +03:00
Benjamin Bouvier 3323938896 Bug 1486829: Make a proper enum class out of jit::FrameType; r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D4462

--HG--
extra : moz-landing-system : lando
2018-08-29 10:07:10 +00:00
Lars T Hansen d10bb30a7d Bug 1479794 - Do not expose Ref types outside the defining module. r=luke
For the time being, we do not want to expose struct types outside of
the module where they are defined, and so there must be restrictions
on how functions and global variables that traffic in struct types can
be used.

At the same time, intra-module uses of functions and globals that use
struct types must be allowed to the greatest extent possible.

Terminology: A function that takes a Ref parameter or returns a Ref
result is "exposed for Ref", as is a global of Ref type.  Anyref is OK
though, in all cases.

To keep it simple we have the following restrictions that can all be
checked statically.

 - Exported and imported functions cannot be exposed for Ref.

 - If the module has an exported or imported table then no function
   stored in that table by the module (by means of an element segment)
   can be exposed for Ref.

 - If the module has an exported or imported table then no
   call_indirect via that table may reference a type that is exposed
   for Ref.

 - An exported or imported global cannot be exposed for Ref.

Conversely,

 - If a module has a private table then it can contain private
   functions that are exposed for Ref and it is possible to call those
   functions via that table.

 - If a module has a private global then it can be exposed for ref.

Note that code generators can work around the restrictions by instead
using functions and globals that use anyref, and by using downcasts to
check that the types are indeed correct.  (Though the meaning of
downcast will change as the GC feature evolves.)

All the code implementing the restrictions is under an #ifdef so that
we can easily find it later; all the test cases testing the
restrictions are in a separate file.  Few existing tests needed to be
adapted, and none substantially.

--HG--
extra : rebase_source : 89fbbf9524dc02f627018d11861df3ef91de851b
2018-08-27 18:16:13 +02:00
Lars T Hansen 900878e741 Bug 1486553 - Only set .external on the table if necessary. r=luke
Previously we would unconditionally set the .external flag on a table
if it had an element segment, but we should only do this if the table
is initialized with an imported function and so may contain functions
from multiple instances.

--HG--
extra : rebase_source : b7712cedce26749768838f7213bf1574ef5baf48
2018-08-27 21:01:56 +02:00
Jon Coppeard 235348e9ef Bug 1486727 - Move some inline method defintions out of gc/Zone.h into new Zone-inl.h r=sfink 2018-08-29 13:23:56 +01:00
Benjamin Bouvier c7da43d2fc Bug 1486731: Guard test against profiling mode enabled; r=me on a CLOSED TREE
And also fix a build issue with the pre-declaration of ReadOnlyCompileOptions
in vm/TraceLogging.h;

--HG--
extra : rebase_source : bb17c13f370c1cef50f09370f4a5b5055dced909
2018-08-29 11:58:12 +02:00
Benjamin Bouvier f6e6cc5fcc Bug 1486731: wasm profiling: Don't look at FP's tagged bit in non-function call situations; r=luke
--HG--
extra : rebase_source : 7a7665b41ad3332aee4c4b7c9d9c8b8c1e677654
extra : amend_source : 06705b2fdab5e489f8c472ea41869e190042553f
2018-08-28 15:10:09 +02:00
Nicholas Nethercote fe34f19459 Bug 1486690 - Rename nsMemory::Clone() and remove unnecessary checks after it. r=glandium
The 'x' in the new name makes it clearer that it's infallible.

--HG--
extra : rebase_source : 51fd946c482befe8a8ca5bd88ecc967971f455da
2018-08-28 15:59:19 +10:00
Nicholas Nethercote 2fcd08a173 Bug 1486690 - Rename NS_str{,}dup and remove unnecessary checks after calls to them. r=glandium
The 'x' prefix makes it clearer that these are infallible.

A couple of nsJSID methods are now also infallible.

--HG--
extra : rebase_source : fcce44a00212d6d341afbf3827b31bd4f7355ad5
2018-08-28 15:58:54 +10:00
Nicholas Nethercote ac5efebb4b Bug 1486690 - Remove unnecessary checks after moz_xmalloc() calls. r=glandium
There are surprisingly many of them.

(Plus a couple of unnecessary checks after `new` calls that were nearby.)

--HG--
extra : rebase_source : 47b6d5d7c5c99b1b50b396daf7a3b67abfd74fc1
2018-08-28 15:56:01 +10:00
Tooru Fujisawa 1e093ed64e Bug 1328820 - Add documentation comment to Promise.h, AsyncFunction.h, and AsyncIteration.h r=anba DONTBUILD comment-only 2018-08-29 12:15:32 +09:00
Jeff Walden 64fceacad0 Bug 1486577 - Don't #include "js/CompilationAndEvaluation.h" in jsapi.h, minimizing the scope of that header and reducing translation-unit size of anything that needs JSAPI but doesn't need to compile/evaluate JavaScript. r=jandem
--HG--
extra : rebase_source : cd9a8becc15477bc5e24408159d4f061ec81c8b2
2018-08-24 22:51:49 -05:00
Jeff Walden 0dc91d3099 Bug 1486577 - Make all users of the various *CompileOptions classes #include "js/CompileOptions.h" so that nothing but that file has to know about these classes having a JS_PUBLIC_API on them, that would have to be present in forward-declarations. r=jandem
--HG--
extra : rebase_source : 432d66f1a88f85568510739917b7ab2871f22da6
2018-08-24 21:25:15 -05:00
Jeff Walden 4bdf4a3614 Bug 1486577 - Don't #include js/SourceBufferHolder.h in jsapi.h, and instead require users to do so -- a minor translation-unit size improvement for anyone who never has to use SourceBufferHolder other than by reference. r=jandem
--HG--
extra : rebase_source : df47aba0c7dac3fe80ab6ea1b9a34c7acc54850d
2018-08-24 21:01:58 -05:00
Jeff Walden f7361648b5 Bug 1486577 - Move compilation and evaluation APIs into a new public js/CompilationAndEvaluation.h header. r=jandem
--HG--
extra : rebase_source : b8ceac41b2b0c1682f8445d6ba8750eb29b27518
2018-08-24 14:55:28 -05:00
Jeff Walden 09a322c117 Bug 1486577 - Move of-thread compilation API into a new public js/OffThreadScriptCompilation.h header. r=jandem
--HG--
extra : rebase_source : d4062d59d4e76e22df29aa9dde504031e4e11dce
2018-08-24 14:44:10 -05:00
Jeff Walden f90686816a Bug 1486577 - Move script/function transcoding API into a new public js/Transcoding.h header. r=jandem
--HG--
extra : rebase_source : a0daf7931594e418b1a97ec48a3667d3dc74ff95
2018-08-24 14:44:04 -05:00
Jeff Walden da612e85ea Bug 1486577 - Move JS::SourceBufferHolder into a new public js/SourceBufferHolder.h header. r=jandem
--HG--
extra : rebase_source : 7d9b78cb427a76620c899df5a60c792f065cf7d0
2018-08-24 14:00:35 -05:00
Jeff Walden 3b35df4388 Bug 1486577 - Move all compile-options classes to a new public js/CompileOptions.h header. r=jandem
--HG--
extra : rebase_source : ed85d0769e262c7db920f7ea0d7c805c9741e2d4
2018-08-24 12:40:55 -05:00
Mike Hommey 1a6f5a62c7 Bug 1485759 - Pass --build-id=sha1 to the linker instead of --build-id. r=froydnj
BFD ld's --build-id means --build-id=sha1, but with lld it means
--build-id=fast. Both support the explicit --build-id=sha1, so use that.
Gold supports --build-id=sha1 too.
ld64, used for mac builds doesn't support neither --build-id=sha1 nor
--build-id.
2018-08-29 08:02:07 +09:00
Kris Maglione 93703861d1 Bug 1486182: Part 3 - Remove unused XPCOMUtils.enumerateCategoryEntries method. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D4280

--HG--
extra : rebase_source : 6e09e6c46cee8ebe0e942f7135408a5b075066d1
2018-08-24 17:20:50 -07:00
Kris Maglione b821d119a0 Bug 1486182: Part 2b - Update XPCOMUtils.enumerateCategoryEntries callers to use the category manager directly. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D4279

--HG--
extra : rebase_source : f57e09927871a23ed3c105325369e5c35ffd3d93
2018-08-24 17:05:41 -07:00
Kris Maglione 53f96aa226 Bug 1486182: Part 2a - Add Services.catMan getter for the category manager. r=mossop
This makes it much easier to update existing consumers of
XPCOMUtils.enumerateCategoryEntries to use the category manager directly.

It also, unfortunately, requires updating existing category manager consumers
to use the Services getter in order to avoid ESLint errors.

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

--HG--
extra : rebase_source : fb9fd9b21db80af472ff6250a2e9a35e8d538147
2018-08-24 22:13:57 -07:00
Dorel Luca c70ff33958 Backed out 2 changesets (bug 1476921) for build bustage. CLOSED TREE
Backed out changeset 25af0b19ec39 (bug 1476921)
Backed out changeset 873cd2e119b3 (bug 1476921)
2018-08-28 22:33:24 +03:00
Ashley Hauck 4cf62bfab3 Bug 1486584 - Update test262 sort-tonumber.js. r=jorendorff 2018-08-27 13:24:00 +03:00
Jan Beich 43a70dc37a Bug 1486281 - Implement js::ThisThread::GetName() on FreeBSD 11.3/12.0. r=sfink r=Build 2018-08-26 08:13:00 +03:00
Ashley Hauck 4d2db13518 Bug 1476921 - Add tests to make sure GetModuleNamespace errors are correctly handled. r=jonco
--HG--
extra : histedit_source : 72ddef3814bf638831316a3ac8e2af466b985284
2018-08-28 09:20:00 +03:00
Ashley Hauck ff648f7d51 Bug 1476921 - Don't throw an error in GetModuleNamespace for errored modules. r=jonco
--HG--
extra : histedit_source : 22e239f1cf048ee327507d2ad9cfabca2100d645
2018-08-27 10:01:00 +03:00
omersid 14f9c628c9 Bug 1472170- Added description as a property for Symbol and updated tests262. r=anba 2018-08-27 23:14:54 -04:00
Cosmin Sabou c6790f084b Merge mozilla-central to mozilla-inbound. a=merge
--HG--
extra : rebase_source : 742ef5d5df898ae0ed4c7c400d230bf6fa94645c
2018-08-29 21:05:53 +03:00
Jason Orendorff 568fc35f0d Bug 1479391 - Fix crash after forced return from a generator. r=jimb
This patch switches from GeneratorObject::finalSuspend to setClosed in order to
dodge an assertion in finalSuspend that the Generator state machine is
transitioning along an expected edge. The way the Debugger manipulates
Generator state is decidedly unexpected, from the perspective of the normal
rules, and we've decided to accept that.
2018-08-14 10:47:05 -05:00
Ashley Hauck ce8e8c5bc9 Bug 1476921 - Don't throw an error in GetModuleNamespace for errored modules. r=jonco 2018-08-28 14:07:00 +03:00
Jeff Walden c7a996e73c Bug 1486577 - Remove a spurious inclusion of js/CompileOptions.h from vm/TraceLogging.h, because the header doesn't need any *CompileOptions declaration or definition. r=me as trivial, following up on a bustage fix that got merged into the landing for bug 1486731
--HG--
extra : rebase_source : c00d0bff0942f4ab5831f7a72f96f126b264ce16
2018-08-29 13:41:14 -05:00
Paul Bone 39a3091a37 Bug 1480001 - Enable allocation counts only when the profiler is active. r=jonco
And also no-longer only on Nightly
2018-08-14 22:40:46 +10:00
bobslept 76d0436bd0 Bug 1461374 - Deduplicate GuardXrayExpandoShapeAndDefaultProto using emitLoadStubField r=mgaudet
--HG--
extra : rebase_source : dd2f68992103b86f8b128c7356bdabe6bbf5e6cf
extra : source : ae0e805295270d7ac6881c73d06d449576be9800
2018-08-13 19:09:07 -04:00
Ted Campbell 129854b17e Bug 1463375 - Increase arm64 simulator stack protection size. r=jandem
The simulator uses a protection area instead of guard pages. Increase
the size of this protection to be larger than worst-case frame size for
EnterJit trampoline.

--HG--
extra : rebase_source : fe05738f67cc25530953d6eb16e5fc1221470691
2018-09-10 21:35:20 -04:00
Masatoshi Kimura 6e443c9a86 Bug 1414060 - move NONASCII to moz.configure; r=mshal 2018-09-10 18:57:40 -04:00
Ted Mielczarek b560625580 Bug 1490130 - fix embedjs.py script to use relative paths to source files; r=froydnj 2018-09-10 18:47:32 -04:00
Andreea Pavel 68e3aa4736 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-09-11 01:02:34 +03:00
Steve Fink 8d394524d2 Bug 1485209 - Make the JIT check that an object/string is non-null and aligned (mainly to catch poison patterns) before storing, r=tcampbell
--HG--
extra : topic : ObjectValue.null
extra : rebase_source : e41fcfeee15ff3a485e4d7823a2b4ac1cb33670a
extra : source : 144ce8d61763d0fac340bf9158827f4116cc13aa
2018-06-21 16:45:34 -07:00
Nathan Froyd 3f8bad7e0c Bug 1480587 - add support for atomic operations on AArch64 Windows; r=lth
--HG--
rename : js/src/jit/arm64/AtomicOperations-arm64.h => js/src/jit/arm64/AtomicOperations-arm64-gcc.h
rename : js/src/jit/x86-shared/AtomicOperations-x86-shared-msvc.h => js/src/jit/arm64/AtomicOperations-arm64-msvc.h
2018-08-28 11:31:09 -04:00
Ted Campbell d5ae417328 Bug 1485347 - Part 2: Remove CheckScriptDataIntegrity. r=jandem
This diagnostic did not provide value and should be removed to allow
further cleanup.

MozReview-Commit-ID: 49XJM0G7NAP
2018-08-28 09:11:29 -04:00
Ted Campbell d02091f27c Bug 1485347 - Part 1: Remove nTypeSets argument from JSScript::partiallyInit. r=jandem
MozReview-Commit-ID: I6xBHG8FLlq
2018-08-28 09:11:29 -04:00
Jan de Mooij 15b08e299e Bug 1486444 - Remove bogus/over-allocating no-arg versions of js_pod_malloc/js_pod_calloc. r=tcampbell
These functions incorrectly passed sizeof(T) instead of 1, so we would allocate sizeof(T) * sizeof(T) bytes instead of sizeof(T) bytes. This was used for PcScriptCache where we would allocate a few extra megabytes due to this bug. The patch changes PcScriptCache to use UniquePtr + MakeUnique.

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

--HG--
extra : amend_source : e9e3e906ac649a4b05d91c10e60bc10bc858fb98
2018-08-27 17:28:16 +02:00
Robin Templeton 7519f8515f bug 1486173 - Part 3: Implement BigInt support for equality operators. r=jandem 2018-08-24 20:43:00 +03:00
Robin Templeton 05b0d002ba bug 1486173 - Part 2: Add BigInt methods for equality comparison. r=jandem 2018-08-24 20:43:00 +03:00
Robin Templeton df6d5560c2 bug 1486173 - Part 1: Move error reporting out of StringToBigInt. r=jandem 2018-08-24 20:43:00 +03:00
Cosmin Sabou d141575366 Merge mozilla-central to mozilla-inbound. a=merge 2018-08-27 19:00:38 +03:00
Cosmin Sabou 55da592d85 Backed out 4 changesets (bug 956376) for causing a spike of failures in bug 1438778. a=backout
Backed out changeset 9cb7826b8f28 (bug 956376)
Backed out changeset 37f94ae472d6 (bug 956376)
Backed out changeset d96d56907ce0 (bug 956376)
Backed out changeset ee0b4798b061 (bug 956376)
2018-08-27 18:52:57 +03:00
Tooru Fujisawa 2ca8e55755 Bug 956376 - Part 1: Add Debugger.findSources. r=jimb 2018-08-23 09:27:30 +09:00
Ashley Hauck 4a4d9d15e3 Bug 1456973 - Add explicit ToNumber in wrappedCompareFn in TypedArraySort. r=jorendorff 2018-08-21 10:16:00 +03:00
Ashley Hauck ed1104d1ed Bug 1449985 - Remove js::IsDelegate, rename IsDelegateOfObject to IsPrototypeOf. r=jandem 2018-08-24 07:55:00 +03:00
arthur.iakab dcedbb628b Merge mozilla-central to inbound 2018-08-25 01:09:50 +03:00
arthur.iakab 5527acb8d8 Merge inbound to mozilla-central a=merge 2018-08-25 01:08:22 +03:00
Luke Wagner f5ba9f6feb Bug 1486027 - don't oom on failed ModuleGenerator memory reservations (r=bbouvier) 2018-08-24 13:41:13 -05:00
Benjamin Bouvier 5596e0df49 Bug 1437065: Tests; r=luke
--HG--
extra : rebase_source : ad3365a9951f31d1bb7df60fff9bb76eb70ccee5
2018-08-23 15:28:16 +02:00
Benjamin Bouvier 9eedb4045d Bug 1437065: Inline monomorphic calls to wasm; r=luke, r=jandem
--HG--
extra : rebase_source : fdf0feee57bbde518368beba2d6056680fe72207
2018-08-24 15:27:20 +02:00
Thi Huynh f1b6a1e14b Bug 1432135 - Rename TokenKind::{Lb,Rb,Lc,Rc,Lp,Rp} to their long names. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D3803

--HG--
extra : moz-landing-system : lando
2018-08-21 09:04:55 +00:00
Mike Hommey b97b9da178 Bug 1481670 - Reduce the size of AnyRegister::Code and MIRType. r=jandem
For the same reason as previous commit, the code clang generates for
~AutoOutputRegister when inlined in CacheIRCompiler::emitArrayJoinResult
makes valgrind unhappy. The reason is that TypedOrValueRegister contains
a union with two types of different sizes, where clang makes the code do
a check against the larger variant before validating the union tag says
that's the type in use, and that doesn't go well under valgrind when the
union value was set for the smaller variant.

One way to fix this is to make the TypedOrValueRegister constructor fill
the uninitialized bytes of the union, but it also appears that the types
used in the union, as well as the union tag itself, are larger than they
actually need to be:

- AnyRegister::Code is a 32-bits integer representing a register number,
when no supported platform has more than 254 registers (accounting for
AnyRegister::Invalid),

- MIRType is a 32-bits integer (enum, actually) representing values that
are all below 256.

Changing only the former would make valgrind happy, avoiding the
uninitialized bytes being tested against in ~AutoOutputRegister, but it
was too tempting to do MIRType as well.
2018-08-24 21:44:12 +09:00
Mike Hommey 4adb3fdde0 Bug 1481670 - Initialize some stack variables to make valgrind happier. r=jandem
clang likes to transform conditions like:

  if (A && B)

into

  if (B && A)

where B might be undefined when A is true (or variants of the above with
! and ||, or split between multiple ifs). This doesn't go well with
valgrind, although it's valid (albeit seemingly convoluted).

In both cases fixed here, the condition A involves calling a function
with a pointer to a variable on the stack that may or may not be filled
by the function call, and the condition B checking the value of said
variable.
2018-08-24 21:44:12 +09:00
Tooru Fujisawa ebe7394edf Bug 1259822 - Show property key in the error message when target object value is null or undefined. r=jorendorff 2018-08-24 13:22:13 +09:00
Mike Hommey 95f25c8a5d Bug 1485610 - Avoid copy relocations in binaries we build. r=froydnj
See bug 1485562 for an example of bad things that can happen with such
relocations, and see also
c90379ddfe/ELF/Relocations.cpp (L496-L537)
2018-08-24 08:57:04 +09:00
Kris Maglione b7962a2385 Bug 1484496: Part 6 - Remove unused XPCOMUtils.IterSimpleEnumerator method. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D3734

--HG--
extra : rebase_source : 54c648602e8384ac78dc28b02a9bdc33c2dd9a35
extra : histedit_source : 3743ce95426177a42ee216659e4a5c7ee0e0adbc
2018-08-18 18:45:57 -07:00
Kris Maglione 3a5c05e76f Bug 1484496: Part 5e - Convert remaining nsISimpleEnumerator users to use JS iteration. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D3733

--HG--
extra : rebase_source : c0fac176d7b3d840c4dbb14f8d95ccfc7f83a5a8
extra : histedit_source : a92c40117d0808a3ad68c972f622a7a42c9ae8ba
2018-08-18 18:13:14 -07:00
Kris Maglione 2dee0aae3c Bug 1484496: Part 4b - Add intrinsic type information to most nsSimpleEnumerators. r=froydnj
This allows JS callers to automatically get the correct types during
interation, without having to explicitly specify them.

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

--HG--
extra : rebase_source : b708f382d8ea571d199c669bfed5b5a7ca9ffac4
extra : histedit_source : 7df6feb82088c8a5ca45dc28fe4d2b852c177fee
2018-08-18 21:06:32 -07:00
Kris Maglione 83db11134f Bug 1484496: Part 1 - Add support for symbol properties to XPIDL. r=nika
This patch allows us to define methods or getters/setters for any of the
current set of well-known symbols. Those are defined by adding the [symbol]
attribute to a method:

  [symbol]
  Iterator iterator();

which causes the method to define a property with the well-known symbol which
matches its method name (Symbol.iterator, in this case).

Due to the implementation details of the XPIDL parser, this currently does not
support defining a non-symbol function with the same name as a symbol
function:

  [symbol]
  Iterator iterator();

  [binaryname(OtherIterator)]
  Thing iterator(in nsIDRef aIID);

throws for a duplicate method name, even though there is no actual conflict.

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

--HG--
extra : rebase_source : 1385e2da93113306730f7c087fe7385dbe668e91
extra : histedit_source : 3afd9fe38e7cbddc5576c2bd1673496dd623e489
2018-08-21 14:08:35 -07:00
Sean Stangl c7f063aba4 Bug 1483030 - Implement basic ARM64 codegen. r=djvj 2018-08-13 14:27:00 -04:00
Luke Wagner 768398fad3 Bug 1480998 - Baldr: fix race in wasm signal handler if browser crashes during shutdown (r=lth,bbouvier)
--HG--
extra : rebase_source : 63d44b4ab39e1d8fc8cbeedf3a1b5272ccd4c231
2018-08-23 11:23:52 -05:00
Luke Wagner 7d61d0f147 Bug 1485162 - Baldr: remove confusing StackDecrementForCall() overloads (r=bbouvier)
--HG--
extra : rebase_source : 6f95f9dde4a55b5484d8becf4e569a3592805dbf
2018-08-23 11:23:52 -05:00
Luke Wagner 08e1df1673 Bug 1485162 - remove dead CodeGeneratorShared field (r=bbouvier)
--HG--
extra : rebase_source : 70a85e1fd257b38dcc953e109162011785d44b46
2018-08-23 11:23:52 -05:00
Matthew Gaudet b450ce65e6 Bug 1479603 - [Part 12] Simplify getKey computations r=jandem
--HG--
extra : rebase_source : 18a4899debf67a1c3c6c150dc1477dbb217bf3d5
2018-08-22 14:58:33 -04:00
Matthew Gaudet 0d5f96ed92 Bug 1479603 - [Part 11] Remove SharedIC.h,cpp r=jandem
--HG--
extra : rebase_source : 0e649dbe71bed7be79d72f15eac871db5b77d548
2018-08-22 15:12:30 -04:00
Matthew Gaudet c49dffc1cb Bug 1479603 - [Part 10] Relocate the remaining Baseline-only stub code to BaselineIC files r=jandem
--HG--
extra : rebase_source : b3ce51473367440012fe45774c36ddf3632b5742
2018-08-21 11:01:02 -04:00
Matthew Gaudet 93fb1c43b0 Bug 1479603 - [Part 9] Remove ICStubCompiler::Engine r=jandem
--HG--
extra : rebase_source : 463d520b91583489205c3c93bacc88ea57ae7e99
2018-08-21 10:05:47 -04:00
Matthew Gaudet 353d6f779d Bug 1479603 - [Part 8] Remove Ion Fallback stub space r=jandem
--HG--
extra : rebase_source : a0848c48cf7946655b8d54c3a2ca3dfb9f2ac6b4
2018-08-20 11:02:43 -04:00
Matthew Gaudet 5ff67fff38 Bug 1479603 - [Part 7] Collapse IonICEntry and BaselineICEntry into ICEntry r=jandem
--HG--
extra : rebase_source : 1706c212b9d0db16a5d37b3b31caada6a38810bf
2018-08-20 10:40:02 -04:00
Matthew Gaudet a98146ee37 Bug 1479603 - [Part 6] Reduce redundant usage of ICStubEngine r=jandem
--HG--
extra : rebase_source : 381f2381b0dee932f64f8136385ee0d5480b60de
2018-08-17 17:16:19 -07:00
Matthew Gaudet 7cd48ebe3b Bug 1479603 - [Part 5] Relocate Baseline fallback stubs to BaselineIC.h r=jandem
--HG--
extra : rebase_source : c214dce7ccbfcfa3666076ff6d1b36cfe7e88574
2018-08-19 09:29:19 -07:00
Matthew Gaudet a541dcdf45 Bug 1479603 - [Part 4] Remove SharedIC support from Ion r=jandem
--HG--
extra : rebase_source : c96005c938faf798196874ab0929b686ba258d58
2018-08-16 10:42:30 -07:00
Matthew Gaudet 16f1b7b2ce Bug 1479603 - [Part 3] Remove Shared Stubs option r=jandem
--HG--
extra : rebase_source : 5d57c2ca8734a357fef4b0f353b05d7077db987b
2018-08-15 20:01:05 -07:00
Matthew Gaudet a25987dbac Bug 1479603 - [Part 2] Cleanup Ion SharedStubs code r=jandem
--HG--
extra : rebase_source : 5853a3b3720bd94b4525c6a40b3203cc012fac59
2018-08-15 19:59:34 -07:00