Closed
Bug 703605
Opened 14 years ago
Closed 14 years ago
Inline all float4 methods (x86-32)
Categories
(Tamarin Graveyard :: Virtual Machine, defect, P2)
Tamarin Graveyard
Virtual Machine
Tracking
(Not tracked)
RESOLVED
FIXED
Q2 12 - Cyril
People
(Reporter: lhansen, Assigned: edwsmith)
References
Details
The float4 methods usually map to SIMD primitives or combinations thereof and are expected to be very hot in real code. We should be sure to inline them all to get the best performance.
| Assignee | ||
Updated•14 years ago
|
Assignee: nobody → edwsmith
| Reporter | ||
Comment 1•14 years ago
|
||
An open question here is about semantics. On SSE2, the semantics of max and min (for example) do not correspond to IEEE or AS3 semantics for Math.max and Math.min. Do we make these primitives machine dependent (and thus fast, but less reliable) or not?
The reality is that if the discrepancies show up around NaN and -0/+0 only, then performance is probably most important for float4 users.
| Reporter | ||
Comment 2•14 years ago
|
||
Edwin writes:
"I just pushed inlining for float4 static functions, except cross() and the
relational operators."
changeset: 6957:eb296131c1e0
user: Edwin Smith <edwsmith@adobe.com>
date: Mon Nov 28 16:36:33 2011 -0500
summary: Bug 703605 - Inline all float4 methods (x86-only, not all methods yet).
| Reporter | ||
Updated•14 years ago
|
Summary: Inline all float4 methods → Inline all float4 methods (x86-32)
Comment 3•14 years ago
|
||
I pushed inline optimizations for corss() and the relational operators in changelists 7060:e7dd91d77736 and 7061:ce0332ed7650, so this should be fixed now.
(note: all(), any(), none() are still not inlined - but those are a separate (P4) bug)
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•