Attached is a reduced test case where the use of OpenMP inhibits vectorization for no apparent reason, resulting in a substantial performance decrease.
Using the -vec-report flag, the missed vectorization is the loop beginning on line 77. If compiled without OpenMP, the two function calls to "weno6" are inlined and vectorized; without OpenMP, the loop is not vectorized. It's not clear to me if ifort is inlining the function calls when OpenMP is active, which may be the source of the problem. Using -opt-report, ifort reports a possible vector dependence in the loop, but only when compiled with OpenMP. A workaround is to add "!DEC$ SIMD" before the loop, in which case it is vectorized.
This is with ifort 12.1.6 20120928 on Mac OS X 10.8.3. The code is compiled with "ifort -O3 -finline -vec-report".