This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Question about output_constant_def/convert_memory_address



Hello,

Looking at the deferred output of string constants as it is implemented in
varasm.c (yesterday's snapshot), I noticed the following :

    STRING_POOL_ADDRESS_P (XEXP (desc->rtl, 0)) = 1;

in output_constant_def() at varasm.c:3282.

Looking at how/where the POOL_ADDRESS_P things were used, I finally ended in
convert_memory_address(), at explow.c:394, where one can read :

    case SYMBOL_REF:
      temp = gen_rtx_SYMBOL_REF (to_mode, XSTR (x, 0));
      SYMBOL_REF_FLAG (temp) = SYMBOL_REF_FLAG (x);
      CONSTANT_POOL_ADDRESS_P (temp) = CONSTANT_POOL_ADDRESS_P (x);
      return temp;

I then have a simple question : shouldn't STRING_POOL_ADDRESS_P also be
copied here ?

Thanks in advance,

 Olivier








Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]