Closed
Bug 783290
Opened 13 years ago
Closed 13 years ago
IonMonkey: LMathD should allow memory operands on x86
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
FIXED
People
(Reporter: jandem, Assigned: jandem)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
|
5.16 KB,
patch
|
dvander
:
review+
|
Details | Diff | Splinter Review |
On top of bug 783272 this removes 5 more instructions from the loop in 3d-cube DrawLine:
for (; i < NumPix; i++) {
Num += NumAdd;
if (Num >= Den) {
Num -= Den;
x += IncX1;
y += IncY1;
}
x += IncX2;
y += IncY2;
}
With range analysis + bug 762095 there's not much more we can optimize - we will emit something like:
0x1ca78c0: cmpl $0x0,0x140ba00
0x1ca78c7: jne 0x1ca7a79
0x1ca78db: cmp %ecx,%edi
0x1ca78dd: jge 0x1ca79f7
0x1ca78f8: addsd %xmm6,%xmm5
0x1ca7903: ucomisd %xmm2,%xmm5
0x1ca7907: jp 0x1ca798a
0x1ca790d: jb 0x1ca798a
0x1ca7949: subsd %xmm2,%xmm5
0x1ca7954: addsd %xmm0,%xmm3
0x1ca795f: addsd %xmm1,%xmm4
0x1ca798a: addsd 0x28(%esp),%xmm3
0x1ca79a8: addsd 0x30(%esp),%xmm4
0x1ca79be: add $0x1,%edi
0x1ca79eb: jmp 0x1ca78c0
Attachment #652462 -
Flags: review?(dvander)
Updated•13 years ago
|
Attachment #652462 -
Flags: review?(dvander) → review+
| Assignee | ||
Comment 1•13 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•