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]

Re: alpha/OSF1 -g bug




>   From: Dean Povey <povey@dstc.qut.edu.au>
>   Date: Wed, 12 Nov 97 09:15:12 +1000
>
>   >   From: Dean Povey <povey@dstc.qut.edu.au>
>   >   Date: Fri, 07 Nov 97 12:01:20 +1000
>   >
>   >   mips-tfile, /tmp/ccaauAsa.s:1421 String too big (4104 bytes)
>   >
>   >It's mips-tfile which is reporting the error.  That is part of egcs.
>   >You can probably just increase the size of PAGE_SIZE in mips-tfile.c
>   >to make it work again.  I'm not sure why mips-tfile.c has this fixed
>   >limit.
>   >
>
>   Nope, that breaks the compiler.
>
>   There must be a better way.
>
>Well, I don't know what it is.
>
>I do know that the error is coming from the mips-tfile program which
>is part of gcc.  It's not a bug in the OSF assembler, nor in gcc.
>

That is definitely right.  It is choking on this line of code:

STATIC symint_t
add_string (vp, hash_tbl, start, end_p1, ret_hash)
     varray_t *vp;                      /* string virtual array */
     shash_t **hash_tbl;                /* ptr to hash table */
     const char *start;                 /* 1st byte in string */
     const char *end_p1;                /* 1st byte after string */
     shash_t **ret_hash;                /* return hash pointer */
{
  register Ptrdiff_t len = end_p1 - start;
  register shash_t *hash_ptr;
  symint_t hi;

  if (len >= PAGE_USIZE)
    fatal ("String too big (%ld bytes)", (long) len);


I am  not up on the gcc architecture, but the comments in mips-tfile seem to 
indicate that because the strings are being stored in hash tables, they
can't exceed page boundaries.  This seems like a bit of a painful limitation
with the size of strings generated by C++ mangling of names.  I am not sure 
that
this is an easily fixed problem.

Thanks for your help anyway.
Dean.

-- 
Dean Povey,                             |  Email: povey@dstc.qut.edu.au 
Research Scientist, Security Unit,      |  Phone: +61 7 3864 2799 
CRC for Distributed Systems Technology  |  Fax:   +61 7 3864 1282
Queensland University of Technology     |  www.dstc.edu.au/events/roadshow/




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