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]
Other format: [Raw text]

Re: ia64 linux doesn't bootstrap


Janis Johnson wrote:

>middle-end/8306: ICE for bitfield7_y.C in C++ compatibility tests

>I left it with the default; someone can change it if it turns out to be
>a regression.  It affects sparc and arm as well as powerpc.

And s390.

What appears to happen is that extract_bit_field is called to
extract a 64-bit bitfield into an SImode target.

This violates the assumption in this comment

  /* ??? We currently assume TARGET is at least as big as BITSIZE.
     If that's wrong, the solution is to test for it and set TARGET to 0
     if needed.  */

and in particular on big-endian targets, causes operand_subword
to be called with a wordnum of -1, which then aborts.

I haven't analysed why extract_bit_field is called like that.

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  weigand@informatik.uni-erlangen.de


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