Closed
Bug 1135428
Opened 10 years ago
Closed 9 years ago
OdinMonkey: remove compileAndGo restriction
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
FIXED
mozilla39
Tracking | Status | |
---|---|---|
firefox39 | --- | fixed |
People
(Reporter: luke, Assigned: luke)
References
Details
Attachments
(1 file)
3.01 KB,
patch
|
bbouvier
:
review+
|
Details | Diff | Splinter Review |
IIUC, JS::CloneFunctionObject is only used for XBL, not any content-visible scripts; is that right bz (due to all the with-wrapped scope chain work)? Currently JS::CloneFunctionObject on asm.js throws a dynamic error, so we disabled Odin on !compileAndGo (a precondition for calling CloneFunctionObject) back when content was cloneable, but now that it's not, I think we can simply remove this restriction.
![]() |
||
Comment 1•10 years ago
|
||
So the situation in Gecko right now is that CloneFunctionObject is only used for XBL methods/getters/setter/eventhandlers. These are not "content" in the sense of being available on the web, but they can appear in extensions obviously. That said, the JSFunctions involved are just created via JS::CompileFunction, so would they ever be asm.js functions anyway?
![]() |
Assignee | |
Comment 2•10 years ago
|
||
(In reply to Boris Zbarsky [:bz] from comment #1) > These are not "content" in the sense of being available on the web, but they > can appear in extensions obviously. Right, we wouldn't crash, just throw a safe exception. If anyone really needed this feature, we could actually add cloning support w/o too much work since we already have the raw functionality to clone an AsmJSModule. > That said, the JSFunctions involved are just created via > JS::CompileFunction, so would they ever be asm.js functions anyway? Yep, asm.js can appear at top-level in a CompileFunction call or nested anywhere inside.
![]() |
||
Comment 3•10 years ago
|
||
OK. I think it's not a problem if things that try to use asm.js in xbl get exceptions, especially if we have AMO check for that. I can't think of any cases when it would be reasonable to use asm in XBL stuff.
Comment 4•10 years ago
|
||
Related to bug 679939 ?
![]() |
Assignee | |
Comment 5•9 years ago
|
||
Looks like we already have tests for the attempted-cross-compartment-clone case and the same-compartment-clone case.
Attachment #8578263 -
Flags: review?(benj)
![]() |
Assignee | |
Comment 6•9 years ago
|
||
(In reply to David Bruant from comment #4) > Related to bug 679939 ? Yeah, this removes a remaining use.
Blocks: 679939
Comment 7•9 years ago
|
||
Comment on attachment 8578263 [details] [diff] [review] rm-compile-and-go-limit Review of attachment 8578263 [details] [diff] [review]: ----------------------------------------------------------------- Cool.
Attachment #8578263 -
Flags: review?(benj) → review+
![]() |
Assignee | |
Comment 8•9 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/e246f0d09dbe
![]() |
Assignee | |
Comment 9•9 years ago
|
||
Oops, return 'nullptr' not 'false': https://hg.mozilla.org/integration/mozilla-inbound/rev/d74279a9b861
Comment 10•9 years ago
|
||
Fix the bustage on --baseline-eager --no-fpu, on x86: https://hg.mozilla.org/integration/mozilla-inbound/rev/4113f4e7e3e3
Comment 11•9 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/e246f0d09dbe https://hg.mozilla.org/mozilla-central/rev/d74279a9b861 https://hg.mozilla.org/mozilla-central/rev/4113f4e7e3e3
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
status-firefox39:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
You need to log in
before you can comment on or make changes to this bug.
Description
•