Floating point math: Why doesn't GCC optimize a*a*a*a*a*a to (a*a*a)*(a*a*a)? | Hacker News Reader