http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53952
--- Comment #3 from rguenther at suse dot de <rguenther at suse dot de> 2012-11-29 09:26:31 UTC --- On Thu, 29 Nov 2012, jakub at gcc dot gnu.org wrote: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53952 > > Jakub Jelinek <jakub at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |jakub at gcc dot gnu.org > > --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-11-29 > 07:57:12 UTC --- > I'd say it is the right thing, just should be done at a different spot, > instead > of doing it for everything just check it for MEM_REF. I think only MEM_REF > can > have ADDR_EXPR of a non-TREE_ADDRESSABLE DECL_P as argument, look e.g. at > mem_ref_refers_to_non_mem_p in expr.c (which checks more than that), or > opf_non_addressable and opf_not_non_addressable handling in > tree-ssa-operands.c. > So, MEM_REF with ADDR_EXPR of a non-TREE_ADDRESSABLE DECL_P IMHO doesn't need > to be instrumented (seems I should modify asan/tsan too). Yes, that's true. Only MEM_REF and TARGET_MEM_REF can have ADDR_EXRPs of sth non-addressable. And yes, no instrumentation necessary. Richard.