We had a case where the poster gave a complete working example on the forum. In that case, 2 steps were required to fix it:
1) upgrade to 11.1
2) set -inline-max-size=50 (this value was low enough to stop in-lining of a function with omp parallel)
Even though 11.1 is intended to be less aggressive on in-lining than 10.1 and 11.0, in that case it still needed the option to help out.
Do you still get vectorization without -openmp but no vectorization with -openmp, if you turn off in-lining?
A complete case would be required to see how you have set it up so that the compiler doesn't have to be concerned about aliasing between dataA and dataB when you don't set -openmp, but is concerned when -openmp is set. If those were function parameters, appropriate restrict qualifiers would be needed. It's possible that the analysis might be affected by a change from default static allocation without -openmp to stack allocation with -openmp, or by the compiler correctly stopping in-lining when you set -openmp.