This is the mail archive of the gcc-bugs@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]

GCC testsuite failures for mips64vrel-elf toolchain with -mlong64 -mgp32


Hi Eric, Hi Richard,

  I need your brains...

  The mips64vrel-elf toolchain is showing a lot of unexpected failures
  in the gcc testsuite (and g++ testsuite) for multilibs which use
  -mlong64 and -mgp32 together.  For example the first one I came
  across is this:

    % ... mips64vrel-elf/gcc/xgcc ... -mlong64 -mgp32 ... gcc.c-torture/compile/20010327-1.c
    
    gcc.c-torture/compile/20010327-1.c:12: error: initializer element is not constant

  Or how about this one:

    % ... mips64vrel-elf/gcc/xgcc ... gcc.c-torture/compile/mipscop-4.c ... -mlong64 -mgp32

    gcc.c-torture/compile/mipscop-4.c:4: error: register specified for 'c3r1' isn't suitable for data type

  The problems all seem to extend from the fact that a long is forced
  to be 64-bits but the general purpose registers are 32-bits. What I
  am not sure about is whether this is a generic bug in gcc somewhere
  (that assumes that a long will fit into a register) or whether there
  is something mips specific about the problem.  (One thing telling
  gcc that a long is 32-bits and another thing tell it that they are
  64-bits).

  What do you think ?

Cheers
  Nick

    


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