-
m is declared outside the parallelized for-loops which makes it shared by default according the OpenMP standard as well as by the "default(shared)" statement. This implies a race condition and the actual value of m is undefined with in the loops. The patch fixes this issue. Note that the compiler might not allocate storage for m on the stack and use register instead, so the race condition may not manifest in wrong output when optimization is enabled, but the error is present anyway.
61cd2f07