[PATCH, i386, Pointer Bounds Checker 10/x] Partitions

Richard Biener richard.guenther@gmail.com
Mon Jun 2 11:41:00 GMT 2014


On Fri, May 30, 2014 at 7:10 PM, Jeff Law <law@redhat.com> wrote:
> On 05/28/14 10:06, Ilya Enkovich wrote:
>>
>> Hi,
>>
>> This patch keeps instrumented and original versions together and preserve
>> tranparent alias chain during symbol name privatization.
>>
>> Bootstrapped and tested on linux-x86_64.
>>
>> Thanks,
>> Ilya
>> --
>> gcc/
>>
>> 2013-05-28  Ilya Enkovich  <ilya.enkovich@intel.com>
>>
>>         * lto/lto-partition.c (add_symbol_to_partition_1): Keep original
>>         and instrumented versions together.
>
> This part is OK.  Note lto/ has its own ChangeLog, so put the ChangeLog
> entry there and don't use the "lto/" prefix in the ChangeLog entry.
>
>
>>         (privatize_symbol_name): Restore transparent alias chain if
>> required.
>
> What exactly are you doing here?  The comment in the code doesn't really
> make it clear what you are doing or why.
>
>
>> +  /* We could change name which is a target of transparent alias
>> +     chain of instrumented function name.  Fix alias chain if so  .*/
>
> So are you saying that we want to change the name?  Or that it could have
> been changed and we have to adjust something because it was changed?
>
> I'm certainly not as familiar with the LTO stuff as I should be -- what is
> the purpose behing chaining the DECL_ASSEMBLER_NAME nodes?

Something gross:

/* Nonzero in an IDENTIFIER_NODE if the name is a local alias, whose
   uses are to be substituted for uses of the TREE_CHAINed identifier.  */
#define IDENTIFIER_TRANSPARENT_ALIAS(NODE) \
  (IDENTIFIER_NODE_CHECK (NODE)->base.deprecated_flag)

this should be all moved to the symbol table level.  (and IDENTIFIER_NODE
shouldn't have to have tree_common.chain and thus become smaller).

Richard.


> jeff
>



More information about the Gcc-patches mailing list