Last Comment Bug 771242 - "Assertion failure: flags_ & HAS_ARGS_OBJ,"
: "Assertion failure: flags_ & HAS_ARGS_OBJ,"
: assertion, regression, testcase
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: Trunk
: x86_64 Mac OS X
-- critical (vote)
: mozilla16
Assigned To: Luke Wagner [:luke]
: general
: Jason Orendorff [:jorendorff]
Depends on:
Blocks: jsfunfuzz 767667
  Show dependency treegraph
Reported: 2012-07-05 11:23 PDT by Gary Kwong [:gkw] [:nth10sd]
Modified: 2013-01-14 08:02 PST (History)
5 users (show)
choller: in‑testsuite+
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

stack (4.28 KB, text/plain)
2012-07-05 11:23 PDT, Gary Kwong [:gkw] [:nth10sd]
no flags Details
patch and test (2.42 KB, patch)
2012-07-05 14:29 PDT, Luke Wagner [:luke]
bhackett1024: review+
Details | Diff | Splinter Review

Description User image Gary Kwong [:gkw] [:nth10sd] 2012-07-05 11:23:00 PDT
Created attachment 639405 [details]

a = function() {
  b = newGlobal()
c = [0, 0]
function d() {
  yield arguments[4]
b.iterate = d
f = Proxy.create(b)
e = Iterator(f, true)
for (p in f) {

asserts js debug shell on m-c changeset e0f64c714814 without any CLI arguments at Assertion failure: flags_ & HAS_ARGS_OBJ,

Valgrind does not indicate anything bad on opt.

autoBisect shows this is probably related to the following changeset:

The first bad revision is:
changeset:   97976:d4ac6ac2e618
user:        Luke Wagner
date:        Thu Jun 28 22:50:15 2012 -0700
summary:     Bug 767667 - fix getelem on optimized arguments (r=bhackett)
Comment 1 User image Luke Wagner [:luke] 2012-07-05 14:29:23 PDT
Created attachment 639473 [details] [diff] [review]
patch and test

Oh duh, generators can be suspended when argumentsOptimizationFailed.  The patch just disables the arguments optimization for generators; fixing it would involve hunting down all generators in the heap.
Comment 4 User image Christian Holler (:decoder) 2013-01-14 08:02:07 PST
A testcase for this bug was automatically identified at js/src/jit-test/tests/basic/testBug771242.js.

Note You need to log in before you can comment on or make changes to this bug.