On Wed, Sep 25, 2019 at 10:24:51PM +0200, Thomas Koenig wrote: > > this patch makes sure that the __def_init variables, which have been > generated for normal allocatable arrays for quite some time, do not fill > up huge amounts of space in the object files with zeros. This is done by > not marking them read-only, which means that they are put into the BSS. > > Setting DECL_ARTIFICIAL on the __def_init variable makes sure it > is handled as predetermined shared in gfc_omp_predetermined_sharing . > > This is not an optimum solution. As the xfail shows, we are now missing > out on an optimization (as seen by the xfail that is now needed), and > having large all-zero variables seems wrong. However, this patch solves > the most urgent problem in this respect. > > This is an 8/9/10 regression, so I would like to commit this to > all of these branches (waiting before gcc 9 reopens, of course). > > I wold then close the PR and open an enchancement PR for the xfail > and the design improvement. > > Test case... I'm not sure what to test for. > > Regression-tested. OK for all affected branches? >
Your approach seems reasonable to me. You may want to ping Jakub or Tobias as this affects openmp. -- Steve