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

1062 Коммитов

Автор SHA1 Сообщение Дата
Shu-yu Guo bc9fd9bf3d Bug 1137569 - Delay stringification of JIT frames until streaming time. (r=djvj) 2015-04-02 14:50:08 -07:00
Jan de Mooij 11274288e1 Bug 1144366 followup - Stop declaring multiple pointers on a single line. r=jorendorff 2015-04-02 11:22:21 +02:00
David Rajchenbach-Teller 4179564dbf Bug 674779 - Per-component CPU monitoring, low-level. r=blassey, r=jandem
--HG--
extra : rebase_source : 7d604155e0ab0b19befa5a70eda5f4876b239935
2015-03-31 12:40:52 +02:00
Jon Coppeard c1a7380238 Bug 1149135 - Don't create HashMapEntry on stack when adding to a HashMap r=luke 2015-04-01 10:11:06 +01:00
Tom Schuster ac250f9d73 Bug 1147005 - Change JSAddPropertyOp signature. r=jorendorff,peterv 2015-03-28 14:47:02 +01:00
Terrence Cole 017640936f Bug 1147180 - Introduce a new, strongly-typed tracing path; r=jonco, r=sfink
--HG--
extra : rebase_source : 8eb525ad1842240a20d9c94faac284dd5adadb4a
2015-02-26 14:15:26 -08:00
Jan de Mooij b8b1677f0f Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 23:22:11 +01:00
Phil Ringnalda bdfca27768 Backed out 7 changesets (bug 1147588, bug 1147669, bug 1147533, bug 1147665, bug 1135985, bug 1147180, bug 1147670) for frequent 10.10 devtools-2 GC assertion failures
CLOSED TREE

Backed out changeset 0bd8c4ec41fa (bug 1147670)
Backed out changeset 35ad82ff9ee7 (bug 1147669)
Backed out changeset ffe7f2e2a0f0 (bug 1147665)
Backed out changeset 37c42cff2c01 (bug 1147588)
Backed out changeset be4138f208ba (bug 1147533)
Backed out changeset 6bbd529bd995 (bug 1147180)
Backed out changeset 853e3ad56dad (bug 1135985)
2015-03-28 10:41:32 -07:00
Phil Ringnalda c8a25251c1 Backed out changeset 0c030f97a04f (bug 1144366) for being on top of patches being backed out
CLOSED TREE
2015-03-28 10:39:56 -07:00
Phil Ringnalda 70731646e2 Backed out changeset d72144153749 (bug 1147005) for being on top of a patch on top of a patch being backed out
CLOSED TREE
2015-03-28 10:39:09 -07:00
Tom Schuster 8a5dbf7c06 Bug 1147005 - Change JSAddPropertyOp signature. r=jorendorff,peterv 2015-03-28 14:47:02 +01:00
Jan de Mooij 8d6d44ecb8 Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 12:08:37 +01:00
Terrence Cole 1ad0c97fed Bug 1135985 - Introduce a new, strongly-typed tracing path; r=jonco, r=sfink
--HG--
extra : rebase_source : c664b207ab859504c66b32cfd4126a67cbf0cafd
2015-02-26 14:15:26 -08:00
Jason Orendorff 1def388b28 Bug 1142794 - Change 'receiver' argument to SetProperty functions and ProxyHandler::set methods to be a HandleValue. r=Waldo.
Also: Change signature of these functions and methods to all have the same arguments in the same order: (cx, obj, id, v, receiver). Also change v from MutableHandleValue to HandleValue.

There is no change in behavior.

In fact the new error message `JSMSG_SET_NON_OBJECT_RECEIVER` is
impossible to trigger from scripts for now, I think (after re-reading
the whole patch with this in mind). JS_ForwardSetPropertyTo is the only
way to get a non-object receiver into the engine, but no caller
currently does so.

We're installing new pipes here, and they should work, but for now it's
the same cold water flowing through as before. Actually hooking up the
hot water is left for another bug (one with tests, not to put too fine a
point on it).

Notes:

*   InvokeGetterOrSetter had to be split into two functions:
    InvokeGetter takes a MutableHandleValue out-param,
    InvokeSetter a HandleValue in-param.

*   Watchpoints can still tamper with values being assigned. So can
    JSSetterOps. I'm pleased we can support this craziness in a way that
    doesn't have to spread via the type system to encompass the entire
    codebase.

*   Change in GlobalObject::setIntrinsicValue is not really a change.
    Yes, it asserted before, but an exception thrown during self-hosting
    initialization is not going to go unnoticed either.

*   Since the receiver argument to js::SetProperty() is at the end now, it
    makes sense for it to be optional. Some callers look nicer.

--HG--
extra : rebase_source : e89f916fe267800bc73890e11aceef5c4855b272
2015-03-01 13:16:19 -06:00
Jason Orendorff fae53e811b Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo.
--HG--
extra : rebase_source : 77cca13d3d8e33831cd5cb82129ede3645e58374
2015-02-28 11:23:44 -06:00
Jason Orendorff 2e5f991fe0 Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo.
--HG--
extra : rebase_source : c40a50b3522e8306d68d8114fe576d4f43006d82
2015-02-17 11:58:43 -06:00
Brian Hackett 533750696e Bug 1143256 - Store object metadata using a weak map, r=luke. 2015-03-25 09:07:51 -07:00
Jan de Mooij d5c5888aa1 Bug 1142669 part 6 - Don't inline scripts that are known to inline a lot of code. r=h4writer
--HG--
extra : rebase_source : 8e65320cf77ff74941515f39cbe390c286a03e33
2015-03-25 15:15:23 +01:00
Shu-yu Guo d935dadedc Bug 1146718 - Split the 'J' tag in the profiler into 'J' (JIT frames without opt info) and 'O' (with opt info). (r=djvj) 2015-03-24 18:49:16 -07:00
Terrence Cole dd4ddb761b Bug 1135985 - Split callback and marking tracers completely; r=jonco, r=mccr8
--HG--
extra : rebase_source : b2e435ebf64ec0bac42af7a8f0968578599fd67b
2015-02-25 13:11:37 -08:00
Steve Fink 9c855788fb Bug 1125412 - Expose an object for inspecting GC memory values, r=terrence
--HG--
extra : rebase_source : c98affaa7f01beb0757256cbe4d63bd78e297dac
2015-01-26 15:32:54 -08:00
Phil Ringnalda c4745d28b1 Backed out 9 changesets (bug 1142775, bug 1139683, bug 1143810, bug 1142761, bug 1142784, bug 1142794, bug 1144819) for widespread bustage
CLOSED TREE

Backed out changeset 7613fc978d36 (bug 1142794)
Backed out changeset e5f0cb31263d (bug 1142784)
Backed out changeset dcd0af73ac84 (bug 1142784)
Backed out changeset 034f9c8e79ee (bug 1142784)
Backed out changeset ce0ee37e3ca9 (bug 1142775)
Backed out changeset 1519b8f2bbba (bug 1142761)
Backed out changeset 26fd55677841 (bug 1139683)
Backed out changeset 7ebc76a450c3 (bug 1144819)
Backed out changeset 92adb459d519 (bug 1143810)
2015-03-22 09:34:25 -07:00
Jason Orendorff 735dca6f1b Bug 1142794 - Change 'receiver' argument to SetProperty functions and ProxyHandler::set methods to be a HandleValue. r=Waldo.
Also: Change signature of these functions and methods to all have the same arguments in the same order: (cx, obj, id, v, receiver). Also change v from MutableHandleValue to HandleValue.

There is no change in behavior.

In fact the new error message `JSMSG_SET_NON_OBJECT_RECEIVER` is
impossible to trigger from scripts for now, I think (after re-reading
the whole patch with this in mind). JS_ForwardSetPropertyTo is the only
way to get a non-object receiver into the engine, but no caller
currently does so.

We're installing new pipes here, and they should work, but for now it's
the same cold water flowing through as before. Actually hooking up the
hot water is left for another bug (one with tests, not to put too fine a
point on it).

Notes:

*   InvokeGetterOrSetter had to be split into two functions:
    InvokeGetter takes a MutableHandleValue out-param,
    InvokeSetter a HandleValue in-param.

*   Watchpoints can still tamper with values being assigned. So can
    JSSetterOps. I'm pleased we can support this craziness in a way that
    doesn't have to spread via the type system to encompass the entire
    codebase.

*   Change in GlobalObject::setIntrinsicValue is not really a change.
    Yes, it asserted before, but an exception thrown during self-hosting
    initialization is not going to go unnoticed either.

*   Since the receiver argument to js::SetProperty() is at the end now, it
    makes sense for it to be optional. Some callers look nicer.

--HG--
extra : rebase_source : 68cd15627a62728061e663706cb1ff8c7bb292a0
2015-03-01 13:16:19 -06:00
Jason Orendorff a5c5338e0f Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo.
--HG--
extra : rebase_source : a177bc1d8991f24652b4e629da5eaa52d9d4a59c
2015-02-28 11:23:44 -06:00
Jason Orendorff db04193771 Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo.
--HG--
extra : rebase_source : 92dd18b10e100e7e2537c151a21d4f3be37e1c08
2015-02-17 11:58:43 -06:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Shu-yu Guo edfb53a32f Bug 1145440 - Ship constant names for tracked strategy and outcomes in the profile JSON instead of slightly longer form strings. (r=djvj) 2015-03-20 20:48:32 -07:00
Shu-yu Guo 7fa429d624 Bug 1143860 - Deduplicate tracked optimizations when streaming the profile. (r=djvj) 2015-03-20 20:48:31 -07:00
Ryan VanderMeulen 6fa51cb894 Backed out changeset d3c9b899f7d2 (bug 1143256) for frequent browser_perf-refresh.js leaks.
--HG--
extra : rebase_source : d8872879f2e6bec248ac3a5fc8b254be437abea0
2015-03-20 16:07:42 -04:00
Kannan Vijayan 8299080b57 Bug 1143802 - Forward jit level information to profiler frontend. r=shu 2015-03-20 13:50:23 -04:00
Brian Hackett 73cf6b02a1 Bug 1143256 - Store object metadata using a weak map, r=luke. 2015-03-20 06:33:33 -07:00
Jan de Mooij 1030a38246 Bug 1142669 part 4 - Fix some inlining issues and inline scripts with loops. r=h4writer 2015-03-19 15:10:07 +01:00
Jan de Mooij f51f2669f3 Bug 1142669 part 3 - Limit the total inlined bytecode size to avoid excessive inlining. r=h4writer 2015-03-20 13:45:36 +01:00
Brian Hackett a054a9a07e Bug 1143521 - Remove IsPoisonedPtr stuff, r=sfink. 2015-03-18 18:01:35 -07:00
Tooru Fujisawa 75d9d40a66 Bug 1079919 - Part 0: Add RegExp ClassSpec. r=bholley 2015-03-18 18:22:05 +09:00
Terrence Cole f4c5db74f1 Bug 1141234 - Part 1: Abstract PossiblyFail into the OOM testing machinery; r=sfink
--HG--
extra : rebase_source : b272f6805d505ad4ae7ac997c3d50b08eadca16c
2015-03-11 11:06:20 -07:00
Nick Fitzgerald 84902745a6 Bug 1142338 - Debugger.Memory's census shouldn't use JS::ubi::Node::as<T>; r=sfink 2015-03-13 13:19:26 -07:00
Brian Hackett 89a333a739 Bug 1135897 - Use unboxed objects for JSON objects and constant literals embedded in scripts, r=jandem. 2015-03-12 17:09:21 -06:00
Jason Orendorff cd9a74e351 Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
--HG--
extra : rebase_source : 8bfc7e8ebd9219511a6119bcefd2c784dc9a1682
2015-02-11 11:38:36 -06:00
Jason Orendorff eedeed1e47 Bug 1141329, prelude - Make ObjectOpResult pointer-sized to fix amazingly bogus code and assertions in IonCaches, introduced by rev 0712a3d4b79c. r=efaust.
--HG--
extra : rebase_source : 1d82219b61105088cf27154c6200e647091a36e0
2015-03-10 12:22:30 -05:00
Carsten "Tomcat" Book bca0a2c02e Backed out changeset df26246112ad (bug 828137) 2015-03-09 16:49:34 +01:00
Jason Orendorff 659c8de550 Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
--HG--
extra : rebase_source : ececca61c52296fb41e26e277a6bfa0d5eca63bb
extra : amend_source : 4229cb2652c2eb5b4347ebe043eccf1c0515e62a
2015-02-11 11:38:36 -06:00
Jason Orendorff f9c659ca6c Bug 1113369, part 7 - [[SetPrototypeOf]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
--HG--
extra : rebase_source : e712f5faf1463a447e52153c556605bb9552e990
2015-02-05 16:36:50 -06:00
Jason Orendorff 29bfe274bb Bug 1113369, part 6 - [[PreventExtensions]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
--HG--
extra : rebase_source : 08631a46c776f6d9e60794ad61308240dde3d94d
2015-02-04 12:01:01 -06:00
Jason Orendorff cc85989b86 Bug 1113369, part 5 - [[Delete]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
--HG--
extra : rebase_source : 64b0e44bbb7673d139fab920243566db4844b517
2015-02-04 10:20:04 -06:00
Jason Orendorff 9a17368e8e Bug 1113369, part 4 - [[Set]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
--HG--
extra : rebase_source : ee44b9a7c933addd7f26643443900843b984587b
2015-02-03 19:51:40 -06:00
Jason Orendorff de9e3b99dc Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
Add an ObjectOpResult out-param for DefineProperty functions everywhere. We leave a few js::DefineProperty() convenience functions with no *result out-param. These have strict behavior: that is, they automatically check the result and throw if it is false. In bug 1125624 these strict signatures may end up being called DefinePropertyOrThrow, as that is what the spec calls it.

--HG--
extra : rebase_source : 36439a8fa433c453f63b02c93fceaf0d8b9e9626
2015-01-30 11:37:07 -06:00
Jason Orendorff ce09b0bfc5 Bug 1113369, part 2 - js::SetArrayLength ObjectOpResult support. r=Waldo.
--HG--
extra : rebase_source : fa947b315a7ede20a16893e3e44dd4118665c777
2015-01-29 23:02:26 -06:00
Jason Orendorff 844535d277 Bug 1113369, part 1½ - Avoid regressing error messages by adding obj to the ObjectOpResult methods that could throw a TypeError. r=Waldo.
--HG--
extra : rebase_source : 5494b04d773badadc2c33fd90ae67cad90aa88d3
2015-02-18 18:49:17 -06:00
Jason Orendorff 63891dbbf5 Bug 1113369, part 1 - Introduce JS::ObjectOpResult and use it in js::StandardDefineProperty. r=Waldo.
In general, jsobj.h will offer, for each standard internal method that returns a boolean value indicating success/failure, signatures with a JS::ObjectOpResult& out-parameter and signatures without it. The ones without will throw a TypeError on failure (that is, the behavior will be "strict").

--HG--
extra : rebase_source : fbf30988ed48412a10168e359848940123035e0f
2015-02-02 17:06:47 -06:00