Fixed the bugs in linear and lastprivate clauses. Now under ubuntu 18.04, using gcc 7.4 and gcc 8.3 can work well.
For linear clause, the old version just compare the modifier.
The linear clause is shown as follow:
linear(linear-list[ : linear-step]), where linear-list is a list or "modifier(list)"
Now the latest version compares modifier and step. Only when they are both same, the two linear clauses can be merged.
For example:
linear(var(s,f,e):2) linear(val(s,f,y):2) should be merged as linear(val(s,f,e,y):2)
linear(var(s,f,e):2) linear(val(s,f,y):3) should not be merged.
Fixed the bugs in linear and lastprivate clauses. Now under ubuntu 18.04, using gcc 7.4 and gcc 8.3 can work well. For linear clause, the old version just compare the modifier. The linear clause is shown as follow: linear(linear-list[ : linear-step]), where linear-list is a list or "modifier(list)" Now the latest version compares modifier and step. Only when they are both same, the two linear clauses can be merged. For example: linear(var(s,f,e):2) linear(val(s,f,y):2) should be merged as linear(val(s,f,e,y):2) linear(var(s,f,e):2) linear(val(s,f,y):3) should not be merged.