Commit Graph

184 Commits

Author SHA1 Message Date
André Bargull
5bb206b75b Bug 1345115 - Part 1: Don't switch compartment when typed array constructor is called with arraybuffer from other compartment. r=Waldo
--HG--
extra : rebase_source : 97867f565d4dfc46519d440304bc8249f7e49966
2017-04-19 06:07:16 -07:00
Nick Fitzgerald
f4ff20cfd0 Bug 1277338 - Part 6: Turn various macro definitions into proper constants; r=sfink 2017-04-13 13:22:20 -07:00
Tooru Fujisawa
0d535229d3 Bug 1331092 - Part 7: Implement Async Generator yield*. r=shu 2017-03-27 23:20:19 +09:00
Tooru Fujisawa
f1ddcc75d7 Bug 1331092 - Part 2: Implement Async Generator except yield*. r=shu 2017-03-27 23:20:17 +09:00
Jan de Mooij
1ea46b80dd Bug 1330593 part 1 - Allow non-flat external strings. r=jwalden,bz 2017-01-26 18:40:41 +01:00
André Bargull
23189400e5 Bug 1328386 - Part 7: Implement legacy constructor semantics for Intl.DateTimeFormat per ECMA-402, 4th edition. r=Waldo 2017-01-23 08:33:47 -08:00
André Bargull
26c8fa8110 Bug 1328386 - Part 6: Implement legacy constructor semantics for Intl.NumberFormat per ECMA-402, 4th edition. r=Waldo 2017-01-23 08:33:43 -08:00
Jon Coppeard
d97a84c06a Bug 1331668 - Fix static build bustage r=me 2017-01-20 16:23:27 +00:00
Jon Coppeard
42c419e02b Bug 1331668 - Add a class to encapsulate the possible results of a property lookup r=jandem 2017-01-20 16:10:16 +00:00
Jeff Walden
ff4fd71576 Bug 1329046 - Simplify creation of DataViews backed by cross-compartment ArrayBuffers. r=sfink
--HG--
extra : rebase_source : e112182f32aa15f9ca512e3512a5f2ddc0948c5a
2016-12-16 15:35:03 -05:00
Nicholas Nethercote
dd6856ca4d Bug 1324330 (part 1) - Mark js::Class and related types as NONHEAP. r=mccr8.
--HG--
extra : rebase_source : 94d5d7fcc5719f59741c7b50750f5beceb6cb08a
2016-12-19 14:18:41 +11:00
Zibi Braniecki
ee5fe1af13 Bug 1270146 - Add PluralRules API. r=Waldo
MozReview-Commit-ID: 2WCcMjiGjwZ

--HG--
extra : rebase_source : 4fa494e35424be579ba3714bab2a4e1932d6404c
2016-12-20 11:54:44 -08:00
Tooru Fujisawa
7391d5b54f Bug 1318815 - Remove ClassSpec delegation and point target ClassSpec directly from prototype class. r=jandem 2016-11-22 16:47:29 +09:00
Tom Schuster
77bdad13e3 Bug 1015798 - Improve ClassSpec depedent behavior especially with inheritance. r=bz 2016-11-08 22:08:28 +01:00
Tooru Fujisawa
5d7377b42e Bug 1185106 - Part 11.1: Implement async functions. r=till
MozReview-Commit-ID: ChWpakqUlsi
2016-08-29 02:05:55 +09:00
Terrence Cole
02f5e80db6 Bug 1245316 - Use Rooted<GCVector> to implement AutoVector; r=sfink
--HG--
extra : rebase_source : 24a7c4e21ea94820d94a4e8454044e4f1988365e
2016-09-22 17:01:38 -07:00
Jan de Mooij
8868714f79 Bug 1298878 - Don't store the actual builtin constructor properties on the global in reserved slots. r=Waldo 2016-08-31 10:58:15 +02:00
Shu-yu Guo
e2b6833e0a Bug 1263355 - Rewrite the frontend: bindings. (r=jorendorff,Waldo) 2016-08-25 01:28:47 -07:00
Jon Coppeard
d1435a2a8c Bug 1296688 - Add JSCLASS_FOREGROUND_FINALIZE flag r=sfink r=smaug 2016-08-24 14:18:10 +01:00
Terrence Cole
c3a5940060 No Bug - Fix up some function names that appear in comments; r=meow
--HG--
extra : rebase_source : c71365b5b3aeb504318ad4720e76b3d0b75b50b9
2016-07-22 10:50:26 -07:00
Tom Schuster
4455e57052 Bug 1114580 - Change ESClassValue to an enum class. r=jorendorff 2016-06-30 00:04:56 +02:00
Nicholas Nethercote
2560f9436f No bug. Remove unused JS_CLASS_MEMBERS argument. r=me.
--HG--
extra : rebase_source : 6837bd7f0fba743ad6c7f9c8af32fca23dbe0de3
2016-06-06 09:14:45 +10:00
Ehsan Akhgari
743de77fb3 Bug 1270370 - Part 2: Expose MapIterator and SetIterator through ESClassValues; r=jorendorff 2016-05-05 19:26:29 -04:00
Anthony Ramine
62b19acdb1 Bug 1270069 - Do not use DebugOnly in ElementAdder. r=nbp
DebugOnly makes binding to other languages (e.g. Rust) more complicated than needed.

--HG--
extra : rebase_source : 83d58042f9ef74a3e02c17b6de51144b721f113e
2016-05-04 08:27:00 -04:00
Ehsan Akhgari
d46718279a Bug 1266804 - Un-inline js::Unbox(); r=jorendorff 2016-04-26 14:51:47 +08:00
Nicholas Nethercote
60dcde7875 Bug 1261723 (part 2) - Separate class ops from js::Class. code=njn,h4writer. r=efaust,bz.
js::Class op are often all null. And when they're not all null, they're often
duplicated among classes. By pulling them out into their own struct, and using a
(possibly null) pointer in js::Class, we can save 114 KiB per process on
64-bit, and half that on 32-bit.
* * *
imported patch separate-ClassOps-2

--HG--
extra : rebase_source : bd751bf247e9491c1966a123dbeffa573657dfb1
2016-04-01 11:00:01 +11:00
Nicholas Nethercote
754dc0bd49 Bug 1261723 (part 1) - Rename js::Class::ops as oOps. r=efaust.
|oOps| is short for "objectOps", which will contrast with the |cOps| "classOps"
field that the next patch will introduce.

--HG--
extra : rebase_source : 920662674e1f672d923cb9060de23c85dfc903bf
2016-04-01 10:59:59 +11:00
Nicholas Nethercote
0faa7a06ba Bug 1261720 (part 2) - Move ClassExtension::isWrappedNative into js::Class::flags. r=jorendorff.
This saves 10 KiB of static data on 64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : f0e9c5cdba7f5a71cda046152691de6a5184a223
2016-04-04 08:47:15 +10:00
Nicholas Nethercote
f7dab46ae8 Bug 1261720 (part 1) - Separate js::ClassExtension from js::Class. r=jorendorff,bz.
js::ClassExtension is often all null. When it's not all null, it's often
duplicated among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 17 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : eb78ade09ce268e886d091f6cbc38d7e5e912527
2016-04-04 08:45:07 +10:00
Jim Blandy
b44fbd0499 Bug 1251529: In object metadata world, rename "object metadata" to "allocation metadata" and "callback" to "builder". r=fitzgen
Exceptions:
- AutoSetNewObjectMetadata and its related type are still exclusively about objects.
- JSCompartment::objectMetadataTable is still only about objects.
- the ObjectMetadataMap type still only has objects as keys.

Non-exceptions:

The builder type, and the JSCompartment member:
ObjectMetadataCallback -> AllocationMetadataBuilder
objectMetadataCallback -> allocationMetadataBuilder

jsfriendapi.h interface:
SetObjectMetadataCallback -> SetAllocationMetadataBuilder
GetObjectMetadata -> GetAllocationMetadata

JSCompartment methods:
hasObjectMetadataCallback -> hasAllocationMetadataBuilder
getObjectMetadataCallback -> getAllocationMetadataBuilder
setObjectMetadataCallback -> setAllocationMetadataBuilder
forgetObjectMetadataCallback -> forgetAllocationMetadataBuilder
addressOfMetadataCallback -> addressOfMetadataBuilder

Shell and testing functions:
SavedStacksMetadataCallback -> SavedStacksMetadataBuilder
ShellObjectMetadataCallback -> ShellAllocationMetadataBuilder
EnableShellObjectMetadataCallback -> EnableShellAllocationMetadataBuilder
enableShellObjectMetadataCallback -> enableShellAllocationMetadataBuilder
GetObjectMetadata -> GetAllocationMetadata
getObjectMetadata -> getAllocationMetadata

Delayed metadata collection:
shouldDelayMetadataCallback -> shouldDelayMetadataBuilder
JSCLASS_DELAY_METADATA_CALLBACK -> JSCLASS_DELAY_METADATA_BUILDER
suppressObjectMetadataCallback -> suppressAllocationMetadataBuilder

--HG--
extra : rebase_source : 54af5a56edd9b39466fa418f7a72fc586d0482d3
2015-09-01 15:26:46 -07:00
Nicholas Nethercote
3e563eab78 Bug 1260984 (part 3) - Separate js::ClassSpec from js::Class. r=jorendorff.
js::ClassSpec is often all null. When it's not all null, it's often duplicated
among classes. By pulling it out into its own struct, and using a (possibly
null) pointer in js::Class, we can save 138 KiB per process on 64-bit, and half
that on 32-bit.

--HG--
extra : rebase_source : 852ac6770ace46958d018107e78c5c44ebd6528a
2016-04-01 10:59:54 +11:00
Nicholas Nethercote
e114b226dc Bug 1259194 (part 4) - Separate js::ObjectOps from js::Class. r=efaust,mrbkap,bz.
js::ObjectOps is often all null. When it's not all null, it's often duplicated
many times among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 208 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : 5be8fe45f652392571b8a6d7b63777cbafba6ae4
2016-03-24 07:00:29 +11:00
Till Schneidereit
db904728ee Bug 911216 - Part 7: Implement ES6 Promises in the JavaScript engine. r=efaust
--HG--
extra : rebase_source : 44ac4d767f6b2298acea444675c7177cb8f0d602
2015-11-10 12:34:00 +01:00
Till Schneidereit
dc24ad50e8 Bug 1254968 - Add support for running JS builtins' constructors over Xray wrappers without unwrapping the newTarget. r=bholley,f=bz 2016-02-10 23:09:13 +01:00
Tom Schuster
180499c4ff Bug 1242214 - Rename JSPropertyDescriptor JS::PropertyDescriptor in js. r=sstangl 2016-01-28 11:28:04 +01:00
Georg Kilzer
8ffe0ffc55 Bug 1236373 - Fix JSCLASS_CACHED_PROTO_WIDTH's definition when it appears outside the js namespace. r=jwalden
--HG--
extra : rebase_source : 27179d493978c6d5dbc1f5c7d05a6597ae9a0109
2016-01-03 21:15:41 +01:00
Benjamin Bouvier
a2ffb6e845 Bug 1235408: Lazily resolve SIMD types; r=jandem
--HG--
extra : rebase_source : 552c34977142aa1bb89eced6d709ea3645460f04
2016-01-11 16:03:02 +01:00
Nigel Babu
3989c307d6 Backed out changeset 51e26ad49ed2 (bug 1235408) for build bustage on a CLOSED TREE
--HG--
extra : commitid : 24qZk2WyHvI
2016-01-11 16:27:20 +05:30
Benjamin Bouvier
06044ccf15 Bug 1235408: Lazily resolve SIMD types; r=jandem
--HG--
extra : commitid : KF8d4hqdx47
extra : rebase_source : 19270a20ddcf9b05552a092a6f9f59c89f58f73b
2015-12-31 10:25:00 +01:00
Jan de Mooij
1c94156bf7 Bug 1225396 part 2 - Fix ES6 iterator prototype chains. r=jorendorff 2015-12-09 22:54:44 -05:00
Jon Coppeard
d8ea08336c Bug 1229493 - Stop shell-only modules classes being reported as standard classes r=shu 2015-12-04 13:47:25 +00:00
Benjamin Bouvier
fb5678ed2a Bug 1225605: Store SIMD type descriptors on the global SIMD object rather than on the global; r=jolesen
--HG--
extra : rebase_source : ea5e9ace0782e01695ee266efdffad1c5769e26b
2015-11-20 10:52:33 +01:00
Jan de Mooij
115d04ec63 Bug 1125423 part 5 - Remove innerObject/outerObject/thisValue Class hooks. r=luke 2015-11-06 19:03:52 +01:00
Jan de Mooij
a84c33ecb0 Bug 1125423 part 1 - Attach WindowProxies to globals instead of using innerObject/outerObject hooks. r=bz,luke 2015-11-06 19:03:51 +01:00
Jon Coppeard
a6103d6c93 Bug 1219183 - Update comments that reference renamed thisObject hook r=shu 2015-10-30 09:50:06 +00:00
Boris Zbarsky
7ae3b58eb6 Bug 1039986. Make Function.prototype.toString work on Web IDL interface objects. r=jorendorff,peterv 2015-10-27 16:25:14 -04:00
Jon Coppeard
59be23d316 Bug 930414 - Replace |thisObject| object op with |thisValue| and use if for modules r=shu r=smaug 2015-10-21 10:21:44 +01:00
Jon Coppeard
ff7b5cb56e Bug 930414 - Implement module namespaces r=shu 2015-10-21 10:21:44 +01:00
Michael Wu
ed4b205b47 Bug 1212663 - Use doxygen style comments in jsapi, r=Waldo 2015-10-17 13:27:16 -04:00
Shu-yu Guo
aedb453377 Bug 589199 - Make a global lexical scope and hook it up to JS entry points. (r=efaust) 2015-10-06 14:00:28 -07:00