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

69854 Коммитов

Автор SHA1 Сообщение Дата
Ted Campbell d593df20af Bug 1533755 - Use RefPtr for SharedScriptData pointers. r=jandem
Leave manual refcounting in the ScriptDataTable for now since it
requires a bit of care to make the automatic types do the right thing
when sweeping.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 20:01:08 +00:00
Ted Campbell ba8d1ed841 Bug 1533755 - Cleanups in PrivateScriptData. r=jandem
Also add a GCManagedDeletePolicy so that the script data can be dropped
even when we are not sweeping.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 20:01:26 +00:00
Emilio Cobos Álvarez c4573875e2 Bug 1533969 - Fix build error with newer glibc. r=nbp
New glibc versions provide a wrapper for gettid, which means that our stuff
fails to build with:

```
/home/emilio/src/moz/gecko/js/src/util/NativeStack.cpp:28:14: error: static declaration of 'gettid' follows non-static declaration
static pid_t gettid() { return syscall(__NR_gettid); }
             ^
/usr/include/bits/unistd_ext.h:34:16: note: previous declaration is here
extern __pid_t gettid (void) __THROW;
```

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

--HG--
extra : moz-landing-system : lando
2019-03-11 19:28:37 +00:00
Jan de Mooij b5d931909b Bug 1530937 part 13 - Convert Ion oolCallVMs and remove old CodeGenerator callVM overload. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D22946

--HG--
extra : moz-landing-system : lando
2019-03-11 13:30:29 +00:00
Gurzau Raul d14e34fe58 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-11 18:54:51 +02:00
Gurzau Raul a08c8c580a Merge autoland to mozilla-central. a=merge 2019-03-11 18:49:16 +02:00
Tooru Fujisawa 1347d58019 Bug 1533711 - Provide class with method chain in filter_utils.py for BinAST invalid file test. r=Yoric
Differential Revision: https://phabricator.services.mozilla.com/D22888

--HG--
extra : moz-landing-system : lando
2019-03-11 16:04:04 +00:00
Tooru Fujisawa 1f1e82a655 Bug 1533620 - Verify that catch scope has correct item. r=Yoric
Depends on D22647

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

--HG--
extra : moz-landing-system : lando
2019-03-11 14:36:08 +00:00
Tooru Fujisawa de43947668 Bug 1532517 - Check identifier syntax in BinTokenReaderMultipart. r=Yoric
There was some case that IsIdentifier check is missing after readIdentifierName.
Moved the check to readIdentifierName itself.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 15:23:30 +00:00
Gurzau Raul c6eb3b6485 Backed out 2 changesets (bug 1532376) for causing Bug 1534118 a=backout
Backed out changeset 82a1c7087806 (bug 1532376)
Backed out changeset 1b4fd78107e2 (bug 1532376)
2019-03-11 12:27:26 +02:00
Gurzau Raul 2a8520e51a Merge autoland to mozilla-central. a=merge 2019-03-11 11:33:57 +02:00
Gurzau Raul 1c921ba7fe Backed out changeset b8137cbaf9cf (bug 1532946) for causing bug 1534118. 2019-03-11 08:54:20 +02:00
Jason Orendorff c1de49ae80 Bug 1495072 - Part 2: Implement new, faster proposed await semantics. r=arai
This patch implements the proposal in this pull request:
<https://github.com/tc39/ecma262/pull/1250>

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

--HG--
extra : moz-landing-system : lando
2019-03-11 15:24:01 +00:00
Jason Orendorff 84b416be15 Bug 1495072 - Part 1: Add some comments in Promise.cpp detailing algorithm steps. r=arai
This also changes a few functions to follow the `unwrapped` convention.

This does not do the job thoroughly for our whole implementation of promises
and async generators; but the patch casts enough light that I can see what I'm
doing in part 2.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 15:23:46 +00:00
Jon Coppeard 8311f852fb Bug 1532376 - Assert that the group's shouldPretenure flag is respected when creating an object r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D22326

--HG--
extra : source : 82a1c708780619b605a5c0f63cd8046f3e992692
2019-03-06 16:38:29 +00:00
Jon Coppeard fe432882de Bug 1532376 - Fix places where we don't respect the shouldPretenure flag when creating an object r=jandem
This adds an overload of GetInitialHeap that takes an ObjectGroup* instead of a Class* and also takes into account whether the group's shouldPreTenure flag is set.  I moved this to JSObject-inl.h too.

I removed the heap parameter in a few places, in particular in NewDenseCopyOnWriteArray which required a bunch of changes elsewhere including the JITs.  I left the heap parameter intact for environment objects where we may have reason prefer these objects to be allocated in the tenure heap.  It's possible we should just remove all these parameters too and make allocation more uniform.

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

--HG--
extra : source : 1b4fd78107e2bcf7fe0f44038176ca745b07cd88
2019-03-06 16:38:25 +00:00
arthur.iakab 9232befab9 Backed out 2 changesets (bug 1532376) on request of pascalc for causing Bug 1534118 a=backout
Backed out changeset 82a1c7087806 (bug 1532376)
Backed out changeset 1b4fd78107e2 (bug 1532376)
2019-03-10 14:53:49 +02:00
Razvan Maries 913f406aec Merge mozilla-inbound to mozilla-central a=merge 2019-03-09 23:51:51 +02:00
Jan de Mooij d105968a3d Bug 1533302 part 3 - Use UniquePtr for CompartmentPrivate's XPCWrappedNativeScope. r=mccr8
`CompartmentPrivate::GetScope()` was added so callers don't have to do `scope.get()`
manually. The `scope` field is now private and was renamed to `mScope`.

Also replaces some `CompartmentPrivate::Get(obj)->scope` instances with
`ObjectScope(obj)`. It's equivalent but shorter.

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

--HG--
extra : moz-landing-system : lando
2019-03-09 10:44:18 +00:00
André Bargull 2f06ea1477 Bug 1530745 - Part 6: Change JSOP_RESUME immediate back to UINT8. r=arai
And add more assertions to document implicit requirements about opcode lengths.

Depends on D22670

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:38:47 +00:00
André Bargull fdc89b3f4a Bug 1530745 - Part 5: Move duplicate code for standalone function compilation into a separate function. r=arai
Depends on D22669

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:38:43 +00:00
André Bargull cc2d6c1784 Bug 1530745 - Part 4: Remove INTERPRETED_METHOD_GENERATOR_OR_ASYNC in favour of using only INTERPRETED_METHOD. r=arai
Depends on D22668

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:37:02 +00:00
André Bargull d6d62140a2 Bug 1530745 - Part 3: Add a helper to retrieve the prototype for a specific function type. r=arai
Depends on D22667

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:36:14 +00:00
André Bargull 6cfbd3c507 Bug 1530745 - Part 2: Move declarations from JSFunction.h as static entries to JSFunction.cpp. r=arai
Depends on D22665

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:34:49 +00:00
André Bargull 3d353e0d51 Bug 1530745 - Part 1: Make JSFunction::asyncKind() work with native and self-hosted functions. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D22665

--HG--
extra : moz-landing-system : lando
2019-03-08 12:33:56 +00:00
André Bargull 3d85755385 Bug 1527974: Use non-shared memmove in self-hosting intrinsics when possible. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D22508

--HG--
extra : moz-landing-system : lando
2019-03-08 13:23:12 +00:00
Benjamin Bouvier 48f0d69763 Bug 1532689: Use Cranelift features to include only architecture-specific support; r=froydnj
This introduces features in the jsrust crate, so we can enable/disable
compilation for a specific platform at compile-time. It also does only select
the architecture targeted by the JIT, which should result in slightly lower
compilation times on every platform, and lower binary sizes too.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 13:09:58 +00:00
Jan de Mooij ae04e89ca6 Bug 1527822 - Allow inlining some cross-realm native calls in IonBuilder. r=anba
This adds the basic infrastructure and uses it for some Math natives and the
Array constructor.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 10:35:32 +00:00
Jon Coppeard dcd3e9f680 Bug 1532946 - Tidy allocation functions by renaming overloads for object and string allocation r=sfink
This patch attempts to make things clearer by renaming the functions used for allocating objects and strings to AllocateObject and AllocateString, rather than having everything be called Allocate.  Allocate is still used for atoms though which is a little strange but was hard to change.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 07:02:39 +00:00
Jason Orendorff e6312a3716 Bug 1533413 - Add Symbol.matchAll to list of expected RegExp methods. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D22583

--HG--
extra : moz-landing-system : lando
2019-03-11 10:20:38 +00:00
Jan de Mooij a7db0bb709 Bug 1522837 part 13 - Implement emitFormalArgAccess in BaselineCodeGen. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D19174

--HG--
extra : moz-landing-system : lando
2019-03-10 19:44:06 +00:00
Jan de Mooij 84f0267fa7 Bug 1522837 part 12 - Support JSOP_NEWARRAY and JSOP_INITELEM_ARRAY in BaselineCodeGen. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D19173

--HG--
extra : moz-landing-system : lando
2019-03-10 19:43:44 +00:00
Jan de Mooij e554148a4e Bug 1522837 part 11 - Implement some simple ops in BaselineInterpreterCodeGen. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D18253

--HG--
extra : moz-landing-system : lando
2019-03-10 19:43:26 +00:00
Jan de Mooij 036413341f Bug 1522837 part 10 - Add interpreter fields to BaselineFrame. r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D18252

--HG--
extra : moz-landing-system : lando
2019-03-10 19:43:08 +00:00
Tom Schuster dd5582f412 Bug 1532421 - Use ValueType in BaselineIC's TypeCheckPrimitiveSetStub. r=mgaudet
This also makes sure that ValueType::PrivateGCThing isn't used, similar to ValueType::Magic.

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

--HG--
extra : moz-landing-system : lando
2019-03-07 16:39:01 +00:00
Bogdan Tara 036d607c2a Backed out changeset ed3b55f9d326 (bug 1532689) for causing build bustages CLOSED TREE 2019-03-08 20:22:38 +02:00
Logan Smyth 0a2f537c4d Bug 1533571 - Do not mark the return opcode as breakable for expression-body arrow functions. r=jlast
Differential Revision: https://phabricator.services.mozilla.com/D22617

--HG--
extra : moz-landing-system : lando
2019-03-08 14:54:18 +00:00
Ashley Hauck 380b78e1c5 Bug 1533399 - Fix field positions. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D22519

--HG--
extra : moz-landing-system : lando
2019-03-08 15:40:01 +00:00
Iain Ireland 54ccd86c68 Bug 1533733: Delete obsolete workaround r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D22705

--HG--
extra : moz-landing-system : lando
2019-03-08 15:28:40 +00:00
Benjamin Bouvier 9558207189 Bug 1532689: Use Cranelift features to include only architecture-specific support; r=froydnj
This introduces features in the jsrust crate, so we can enable/disable
compilation for a specific platform at compile-time. It also does only select
the architecture targeted by the JIT, which should result in slightly lower
compilation times on every platform, and lower binary sizes too.

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

--HG--
extra : moz-landing-system : lando
2019-03-08 13:47:35 +00:00
Jan de Mooij 94d1ed4cac Bug 1530937 part 12 - Convert remaining inline callVMs in CodeGenerator.cpp. r=tcampbell
* Moves NewArrayWithGroup from CodeGenerator.cpp to builtin/Array.cpp

* GetProperty has various overloads so I added GetValueProperty. I considered
  *renaming* that GetProperty overload to GetValueProperty but there are quite
  a lot of callers in VM code where GetProperty is probably closer to the spec
  language.

* Ion called js::GetElement and js::CallElement which forwarded to GetElementOperation.
  This was changed to call GetElementOperation directly (eliminates a VM wrapper).

Depends on D22677

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

--HG--
extra : moz-landing-system : lando
2019-03-08 14:56:38 +00:00
Jan de Mooij 6f558829a7 Bug 1530937 part 11 - Convert even more callVMs in CodeGenerator.cpp. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D22677

--HG--
extra : moz-landing-system : lando
2019-03-08 14:52:16 +00:00
Brian Hackett e1619b5368 Bug 1533523 - Fire Debugger::onNewScript for default class constructors, r=loganfsmyth.
Differential Revision: https://phabricator.services.mozilla.com/D22580

--HG--
extra : moz-landing-system : lando
2019-03-07 20:56:11 +00:00
shindli ff642e0697 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-08 15:54:05 +02:00
shindli 6c4127e860 Merge inbound to mozilla-central. a=merge 2019-03-08 15:50:01 +02:00
Andrea Marchesini 8e20bbbc9a Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 12 - nsICookieSettings for the channel creation, r=ckerschb,asuth,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D21538

--HG--
extra : moz-landing-system : lando
2019-03-08 09:04:11 +00:00
Jan de Mooij caa37e0fbf Bug 1533302 part 2 - Tie XPCWrappedNativeScope lifetime to CompartmentPrivate. r=mccr8
XPCWrappedNativeScope is now allocated and destroyed with the CompartmentPrivate
that owns it. In follow-up bugs we could merge the two classes (see bug 1032928).

This also removes the dying-scopes list. XPCJSRuntime now stores the list of all
scopes as mozilla::LinkedList.

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

--HG--
extra : moz-landing-system : lando
2019-03-08 13:28:47 +00:00
Jan de Mooij b196cb4d46 Bug 1533302 part 1 - Remove unused XPCWrappedNativeScope::IsDyingScope. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D22491

--HG--
extra : moz-landing-system : lando
2019-03-07 19:05:36 +00:00
Ashley Hauck a58ef8a203 Bug 1528038 - Split field-related BytecodeEmitter behavior into separate methods. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D21523

--HG--
extra : moz-landing-system : lando
2019-03-08 13:00:47 +00:00
Paul Bone 9a8337af9d Bug 1532857 - Use SubChunkLimit when re-enabling the nursery r=jonco
I should have included this change in Bug 1527532.

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

--HG--
extra : moz-landing-system : lando
2019-03-06 12:57:04 +00:00