Last Comment Bug 713754 - Native key iterators should have an array of JSString*
: Native key iterators should have an array of JSString*
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: x86 Mac OS X
-- normal (vote)
: mozilla12
Assigned To: Brian Hackett (:bhackett)
: Jason Orendorff [:jorendorff]
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:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

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

Description User image 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 User image Brian Hackett (:bhackett) 2011-12-27 15:06:55 PST
Created attachment 584496 [details] [diff] [review]
patch (7db218a91c88)
Comment 2 User image Brian Hackett (:bhackett) 2012-01-18 16:57:34 PST
Comment 3 User image Marco Bonardo [::mak] 2012-01-19 02:57:47 PST

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