\left(\left(d1 \cdot d1\right) \cdot d1\right) \cdot d1
\left(d1 \cdot d1\right) \cdot \left(d1 \cdot d1\right)
double f(double d1) {
double r3786454 = d1;
double r3786455 = r3786454 * r3786454;
double r3786456 = r3786455 * r3786454;
double r3786457 = r3786456 * r3786454;
return r3786457;
}
double f(double d1) {
double r3786458 = d1;
double r3786459 = r3786458 * r3786458;
double r3786460 = r3786459 * r3786459;
return r3786460;
}



Bits error versus d1
Initial program 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019168 +o rules:numerics
(FPCore (d1)
:name "FastMath repmul"
(*.p16 (*.p16 (*.p16 d1 d1) d1) d1))