Closed
Bug 787343
Opened 12 years ago
Closed 12 years ago
IonMonkey: LStackArgT
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: sstangl, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [ion:t])
Attachments
(1 file)
(deleted),
patch
|
dvander
:
review+
|
Details | Diff | Splinter Review |
Boxing is very slow on x86_64. Doing a complicated box operation just to write that Value to the stack is silly if the type is known and the payload is 32-bit.
This saves about 5.6ms locally on SunSpider (407.5 -> 401.9), but I'm running with very old hardware, so it's entirely likely that nothing at all may happen on AWFY. Who knows. It's a good idea anyway.
(I tried V8, but it's even less stable on this Pentium 4 than it is on the i7, making it impossible to get any useful information out of it.)
Attachment #657198 -
Flags: review?(dvander)
Comment on attachment 657198 [details] [diff] [review]
patch
Review of attachment 657198 [details] [diff] [review]:
-----------------------------------------------------------------
::: js/src/ion/x64/MacroAssembler-x64.h
@@ +137,4 @@
> void storeValue(const Value &val, const T &dest) {
> jsval_layout jv = JSVAL_TO_IMPL(val);
> movq(ImmWord(jv.asBits), ScratchReg);
> + if (!val.isPrimitive())
This should be val.isMarkable() since strings are primitive
Attachment #657198 -
Flags: review?(dvander) → review+
Updated•12 years ago
|
Whiteboard: [ion:t]
Reporter | ||
Comment 2•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•