Last Comment Bug 713754 - Native key iterators should have an array of JSString*
: Native key iterators should have an array of JSString*
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: x86 Mac OS X
: -- normal (vote)
: mozilla12
Assigned To: Brian Hackett (:bhackett)
:
Mentors:
Depends on: 719686
Blocks: 701965
  Show dependency treegraph
 
Reported: 2011-12-27 14:21 PST by Brian Hackett (:bhackett)
Modified: 2012-03-15 16:55 PDT (History)
4 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
patch (7db218a91c88) (14.20 KB, patch)
2011-12-27 15:06 PST, Brian Hackett (:bhackett)
dvander: review+
Details | Diff | Review

Description Brian Hackett (:bhackett) 2011-12-27 14:21:38 PST
Currently native iterators store an array of jsids when doing a key iteration (for x in y).  When going through the iteration, js_IteratorNext needs to test and convert non-string ids into a string before returning, which happens within a stub call during JM.  It would be simpler if the string conversion happened during construction of the iterator, rendering the test unnecessary.  With some other work, all jitcode tests can be removed from IteratorNext on key iterators, which will simplify and speed things up for IM.
Comment 1 Brian Hackett (:bhackett) 2011-12-27 15:06:55 PST
Created attachment 584496 [details] [diff] [review]
patch (7db218a91c88)
Comment 2 Brian Hackett (:bhackett) 2012-01-18 16:57:34 PST
https://hg.mozilla.org/integration/mozilla-inbound/rev/57c19a4e2d50
Comment 3 Marco Bonardo [::mak] 2012-01-19 02:57:47 PST
https://hg.mozilla.org/mozilla-central/rev/57c19a4e2d50

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