title: What does gcc's ffast-math actually do?
body: <p>I understand gcc's <code>--ffast-math</code> flag can greatly increase speed for float ops, and goes outside of IEEE standards, but I can't seem to find information on what is really happening when it's on. Can anyone please explain some of the details and maybe give a clear example of how something would change if the flag was on or off?</p>
  
  <p>I did try digging through S.O. for similar questions but couldn't find anything explaining the workings of ffast-math.</p>