Closed
Bug 355023
Opened 19 years ago
Closed 19 years ago
destructuring assignment (group assignment) optimized too much
Categories
(Core :: JavaScript Engine, defect, P2)
Core
JavaScript Engine
Tracking
()
VERIFIED
FIXED
mozilla1.9alpha1
People
(Reporter: sync2d, Assigned: brendan)
References
Details
(Keywords: verified1.8.1.1)
Attachments
(1 file)
920 bytes,
patch
|
mrbkap
:
review+
dveditz
:
approval1.8.1.1+
|
Details | Diff | Splinter Review |
$ js -v 170
js> Array.prototype[0] = 1024;
1024
js> (function(){ var a=[],[x]=a; print(x); })();
1024
js> (function(){ var [x]=[]; print(x); })();
undefined
Updated•19 years ago
|
Summary: destructuring assignment optimized too much → destructuring assignment (group assignment) optimized too much
Comment 1•19 years ago
|
||
The special, optimized case of [...] = [...] is called "group assignment", so I added that phrase to the summary.
Assignee | ||
Comment 3•19 years ago
|
||
With more work and more code, EmitGroupAssignment could budget more stack and emit more code. Worth it for this hard case? I think not.
/be
Assignee | ||
Updated•19 years ago
|
Priority: -- → P2
Target Milestone: --- → mozilla1.9alpha
Updated•19 years ago
|
Attachment #240839 -
Flags: review?(mrbkap) → review+
Assignee | ||
Comment 4•19 years ago
|
||
Fixed on trunk:
Checking in jsemit.c;
/cvsroot/mozilla/js/src/jsemit.c,v <-- jsemit.c
new revision: 3.223; previous revision: 3.222
done
/be
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Comment 5•19 years ago
|
||
Checking in regress-355023.js;
/cvsroot/mozilla/js/tests/js1_7/regress/regress-355023.js,v <-- regress-355023.js
initial revision: 1.1
done
Flags: in-testsuite+
Updated•19 years ago
|
Flags: blocking1.8.1.1? → blocking1.8.1.1+
Comment 7•19 years ago
|
||
Comment on attachment 240839 [details] [diff] [review]
simple but suboptimal fix
approved for 1.8 branch, a=dveditz for drivers
Attachment #240839 -
Flags: approval1.8.1.1+
Assignee | ||
Comment 8•19 years ago
|
||
Fixed on the 1.8 branch:
Checking in jsemit.c;
/cvsroot/mozilla/js/src/jsemit.c,v <-- jsemit.c
new revision: 3.128.2.56; previous revision: 3.128.2.55
done
/be
Keywords: fixed1.8.1.1
Comment 9•19 years ago
|
||
verified fixed 20061122 1.8.1.1 windows/linux/mac, 1.9 windows/linux
Keywords: fixed1.8.1.1 → verified1.8.1.1
You need to log in
before you can comment on or make changes to this bug.
Description
•