-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
-
None
-
generic
-
generic
Missing VAPI Identity transforms for MUL, ADD, SUB, DIV.
X + 0 = X
X * 1 = X
X – 0 = X
X * 0 = 0
X / X = 1 (only integral types, since floating point types have different semantics for special values for mod and division operations)
Such cases do not create issues in auto-vectorization flow since existing idealizations on scalar nodes optimize the expressions upfront.
Other distributive property applications
A * B + A * C = A * (B + C)
Since multiplication is costly in comparison to addition
JDK-8358521 will be able to handle subset of such expression if both the operations involve scalar broadcasting
X + 0 = X
X * 1 = X
X – 0 = X
X * 0 = 0
X / X = 1 (only integral types, since floating point types have different semantics for special values for mod and division operations)
Such cases do not create issues in auto-vectorization flow since existing idealizations on scalar nodes optimize the expressions upfront.
Other distributive property applications
A * B + A * C = A * (B + C)
Since multiplication is costly in comparison to addition
JDK-8358521 will be able to handle subset of such expression if both the operations involve scalar broadcasting
- relates to
-
JDK-8358521 Optimize vector operations with broadcasted inputs
-
- Open
-