Closed
Bug 450529
Opened 16 years ago
Closed 16 years ago
TM: asserts on foxnews.com in 3rd party script
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: dvander, Assigned: mrbkap)
References
()
Details
Attachments
(2 files)
20.22 KB,
text/plain
|
Details | |
12.72 KB,
patch
|
brendan
:
review+
|
Details | Diff | Splinter Review |
Script looks third party, "Prototype JavaScript framework, version 1.5.1.2"
That assertion doesn't like that regs->pc is out of date, and it wants to peek ahead in the bytecode stream. We could probably parameterize match_or_replace to have the caller pass in the implied-test bit, since we can tell at record time that we hit that case.
Reporter | ||
Comment 2•16 years ago
|
||
FWIW, seeing this on more than one site -- same assert on Apple's iPhone apps store.
Comment 3•16 years ago
|
||
Builtins shouldn't reach back into the interpreter. We might want to set cx->fp to NULL when entering a trace, and back to its original value on exit in debug builds to catch these cases.
Updated•16 years ago
|
Assignee: general → brendan
Updated•16 years ago
|
Assignee: brendan → mrbkap
Assignee | ||
Comment 4•16 years ago
|
||
Many thanks to Brendan and Andreas for holding my hand through the builtin jungle.
Attachment #333877 -
Flags: review?(brendan)
Comment 5•16 years ago
|
||
Comment on attachment 333877 [details] [diff] [review] Proposed fix >+js_str_match_helper(JSContext *cx, uintN argc, jsval *vp, jsbytecode *pc) Been using js_StringMatchHelper and the like (see js_StringReplaceHelper). I'm hip to pc at end. > TraceRecorder::record_JSOP_CALL() > { >- uintN argc = GET_ARGC(cx->fp->regs->pc); >+ uintN argc = GET_ARGC(pc); We talked, you're cool with a local pc. Need a trace-tests.js addition to cover this case. Thanks, /be
Attachment #333877 -
Flags: review?(brendan) → review+
Assignee | ||
Comment 6•16 years ago
|
||
http://hg.mozilla.org/tracemonkey/index.cgi/rev/3eaa6a428d52 includes the trace-tests.js testcase.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•