On Wed, Mar 28, 2018 at 04:14:45PM +0200, Martin Liška wrote:
Hi.
I'm sending Jakub's patch, where I removed the guard in asan_poison_variable.
Patch can bootstrap on ppc64le-redhat-linux and survives regression tests.
Martin
gcc/ChangeLog:
2018-03-28 Jakub Jelinek <jakub@redhat.com>
Martin Liska <mliska@suse.cz>
PR sanitizer/85081
* gimplify.c (asan_poison_variable): Don't do the check for
gimplify_omp_ctxp here.
(gimplify_decl_expr): Do it here.
(gimplify_target_expr): Likewise.
gcc/testsuite/ChangeLog:
2018-03-28 Jakub Jelinek <jakub@redhat.com>
Martin Liska <mliska@suse.cz>
PR sanitizer/85081
* g++.dg/asan/pr85081.C: New test.
I guess it is ok for trunk for now, but for stage1 I'd like analysis on why
you've added that !gimplify_omp_ctxp stuff at all. E.g. for local vars
inside of OpenMP/OpenACC constructs there should be no reason why they
couldn't be unpoisoned and poisoned inside of the OpenMP region.
Jakub