[RFC gomp] Fix PR c++/25874
Diego Novillo
dnovillo@redhat.com
Tue Apr 18 12:46:00 GMT 2006
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jakub Jelinek wrote:
> Hi!
>
> Before PR26651 fix, expand_omp freed {,post} dominators and cleaned up cfg
> after handling every omp region. That doesn't work any longer and have been
> removed in Richard's patch. But, if we have inlined function with parallel
> regions in it, expand_omp_parallel just makes the sub-graph unreachable
> and because we don't clean the cfg up afterwards, subsequent
> calculate_dominance_info ICEs because it is not prepared to handle bb's
> unreachable from ENTRY. The following patch seemed to work for me on
> x86_64-linux, but I'm not sure if that's the best (and safest) fix.
>
Odd that Richard didn't run into problems, this is exactly why I had
been forced to do cleanup the CFG after expanding.
> PR c++/25874
> * omp-low.c (expand_omp_parallel): If child_cfun->cfg, free dominators,
> post dominators and cleanup cfg before returning.
>
> * gcc.dg/gomp/pr25874.c: Add dg-options.
> * g++.dg/gomp/pr25874.C: Add dg-options.
>
Unless Richard has a specific reason why this shouldn't be needed, it's OK.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
iD8DBQFERN+nUTa2oAUaiwQRAgCvAKCL6UY8w+QHh1g9VjISPnWDQ2FU3QCdGq93
I3GCAG2BNS3PLQthAerutwM=
=Nxt/
-----END PGP SIGNATURE-----
More information about the Gcc-patches
mailing list