title: Interpolating between ifort -O2 and -O3 optimization flags
body: <p>I&#39;m trying to debug a segmentation fault which manifests when I compile one of my source files using ifort 13.1.3 with the -O3 optimization flag. If I use -O2 for this particular file and -O3 for the rest of my code, everything runs fine. As a result, I&#39;m unable to compile with debugging symbols as the issue simply vanishes.</p>
  
  <p>To try and narrow down which particular optimization operation is causing this, I&#39;d like if possible to add in some of the more aggressive optimizations being done with -O3 but not -O2. From the 13.1.3 reference:</p>
  
  <p><a href="https://software.intel.com/sites/products/documentation/doclib/stdxe/2013/composerxe/compiler/fortran-mac/" rel="nofollow">https://software.intel.com/sites/products/documentation/doclib/stdxe/2013/composerxe/compiler/fortran-mac/</a></p>
  
  <p>The additional high level optimizations seem to include:</p>
  
  <ul>
  <li>Fusion </li>
  <li>Block-Unroll-and-Jam</li>
  <li>Collapsing IF statements</li>
  </ul>
  
  <p>There are probably a few others, but I can&#39;t identify them as being exclusive to -O3 from the reference. Are there flags I could use with -O2 to switch on some of these more aggressive options individually, or turn them off starting from -O3?</p>