Closed Bug 578922 Opened 15 years ago Closed 15 years ago

remove wasteful store/load in box_value_for_native_call on x64

Categories

(Core :: JavaScript Engine, defect)

x86_64
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: luke, Assigned: luke)

References

Details

(Whiteboard: fixed-in-tracemonkey)

Attachments

(1 file)

TraceRecorder::box_value_for_native_call currently contains the following snippet: // TODO: this is very sad; remove when there is a LIR_d2q LIns *tmp = lir->insAlloc(sizeof(Value)); lir->insStore(v_ins, tmp, 0, ACC_OTHER); return lir->insLoad(LIR_ldq, tmp, 0, ACC_OTHER); When bug 574969 is finished, this hack can be removed, which will improve the performance of boxing doubles on x64.
I think you got the wrong bug in your Depends on - I bet it's not really bug 549153.
Oops, you're right!
Depends on: fatvals
Attached patch use LIR_dasqSplinter Review
SS is 2ms (.3%) faster (1ms from each of 3d-cute and crypto-aes). V8 is 36ms (.7%) faster (from earley-boyer and splay).
Assignee: general → lw
Status: NEW → ASSIGNED
Attachment #459020 - Flags: review?(nnethercote)
Attachment #459020 - Flags: review?(nnethercote) → review+
Whiteboard: fixed-in-tracemonkey
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: