summarylogtreecommitdiffstats
path: root/gcc9.patch
blob: d538a026205f6d6d0b42474fc3b64b137196f3b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
commit e6d803fd4a383cecf8c643095f093a31c944b785
Author: Robert-André Mauchin <zebob.m@gmail.com>
Date:   Wed Apr 3 01:36:52 2019 +0200

    Fix for GCC9 new OpenMP data sharing
    
    GCC 9 started implementing the OpenMP 4.0 and later behavior. When not using
    default clause or when using default(shared), this makes no difference, but
    if using default(none), previously the choice was not specify the const
    qualified variables on the construct at all, or specify in firstprivate
    clause. In GCC 9 as well as for OpenMP 4.0 compliance, those variables need
    to be specified on constructs in which they are used, either in shared or
    in firstprivate clause. Specifying them in firstprivate clause is one way to
    achieve compatibility with both older GCC versions and GCC 9,
    another option is to drop the default(none) clause.
    
    This patch thus drops the default(none) clause.
    
    See https://gcc.gnu.org/gcc-9/porting_to.html#ompdatasharing
    
    Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>

diff --git a/intern/elbeem/intern/solver_main.cpp b/intern/elbeem/intern/solver_main.cpp
index 68f7c04cd54..514087b6130 100644
--- a/intern/elbeem/intern/solver_main.cpp
+++ b/intern/elbeem/intern/solver_main.cpp
@@ -381,7 +381,7 @@ LbmFsgrSolver::mainLoop(const int lev)
 	GRID_REGION_INIT();
 #if PARALLEL==1
 	const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
   reduction(+: \
 	  calcCurrentMass,calcCurrentVolume, \
 		calcCellsFilled,calcCellsEmptied, \
@@ -1126,7 +1126,7 @@ LbmFsgrSolver::preinitGrids()
 		GRID_REGION_INIT();
 #if PARALLEL==1
 	const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
   reduction(+: \
 	  calcCurrentMass,calcCurrentVolume, \
 		calcCellsFilled,calcCellsEmptied, \
@@ -1164,7 +1164,7 @@ LbmFsgrSolver::standingFluidPreinit()
 	GRID_REGION_INIT();
 #if PARALLEL==1
 	const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
   reduction(+: \
 	  calcCurrentMass,calcCurrentVolume, \
 		calcCellsFilled,calcCellsEmptied, \