[PATCH, CHKP] Fix cdtor merge for instrumented functions

Jan Hubicka hubicka@ucw.cz
Fri Apr 3 17:01:00 GMT 2015


> On 02 Apr 22:21, Jan Hubicka wrote:
> > > Hi,
> > > 
> > > This patch doesn't allow instrumentation thunks calls while merging constructors and destructors.  Not isntrumented code is not affeceted.  Bootstrapped and tested on x86_64-unknown-linux-gnu.  OK for trunk?
> > > 
> > > Thanks,
> > > Ilya
> > > --
> > > gcc/
> > > 
> > > 2015-04-02  Ilya Enkovich  <ilya.enkovich@intel.com>
> > > 
> > > 	* ipa.c (ipa_cdtor_merge): Skip instrumentation thunks.
> > 
> > So the problem here is that you do have two names for the function, one that
> > is not instrumented and other that is instrumented?  I am bit surprised we get
> > instrumentation on ctors that should not take or return pointer parameter,
> > but I see one can trigger that at least by manually adding constructor attribute.
> > 
> > I think what you need is to drop DECL_STATIC_CONSTRUCTOR/DESTRUCTURO flags when
> > producing the transparent alias.
> > 
> > Honza
> 
> Dropping flag is a good option.  Here is a corresponding patch.  Bootstrapped and tested on x86_64-unknown-linux-gnu.  Does it look OK?
> 
> Thanks,
> Ilya
> --
> gcc/
> 
> 2015-04-03  Ilya Enkovich  <ilya.enkovich@intel.com>
> 
> 	* ipa-chkp.c (chkp_maybe_create_clone): Reset cdtor
> 	flags for instrumentation thunk.
> 	(chkp_produce_thunks): Likewise.

OK,
Thanks!
Honza



More information about the Gcc-patches mailing list