Mingjie Xing <mingjie.x...@gmail.com> writes:
> There are two test cases failed when run 'make check-gcc
> RUNTESTFLAGS="mips.exp"'.  The log is,
>
> Executing on host: /home/xmj/tools/build-test-trunk-mips/gcc/xgcc
> -B/home/xmj/tools/build-test-trunk-mips/gcc/
> /home/xmj/tools/test-trunk/gcc/testsuite/gcc.target/mips/dspr2-MULT.c
>  -DNOMIPS16=__attribute__((nomips16)) -mabi=32 -mips32r2 -mgp32 -O2
> -mdspr2 -mtune=74kc -ffixed-hi -ffixed-lo -S  -o dspr2-MULT.s
> (timeout = 300)
> PASS: gcc.target/mips/dspr2-MULT.c (test for excess errors)
> PASS: gcc.target/mips/dspr2-MULT.c scan-assembler \tmult\t
> PASS: gcc.target/mips/dspr2-MULT.c scan-assembler ac1
> FAIL: gcc.target/mips/dspr2-MULT.c scan-assembler ac2
> Executing on host: /home/xmj/tools/build-test-trunk-mips/gcc/xgcc
> -B/home/xmj/tools/build-test-trunk-mips/gcc/
> /home/xmj/tools/test-trunk/gcc/testsuite/gcc.target/mips/dspr2-MULTU.c
>   -DNOMIPS16=__attribute__((nomips16)) -mabi=32 -mips32r2 -mgp32 -O2
> -mdspr2 -mtune=74kc -ffixed-hi -ffixed-lo -S  -o dspr2-MULTU.s
> (timeout = 300)
> PASS: gcc.target/mips/dspr2-MULTU.c (test for excess errors)
> PASS: gcc.target/mips/dspr2-MULTU.c scan-assembler \tmultu\t
> PASS: gcc.target/mips/dspr2-MULTU.c scan-assembler ac1
> FAIL: gcc.target/mips/dspr2-MULTU.c scan-assembler ac2
>
> Is it a bug?

It's a register-allocation optimisation regression that's been around
for quite a long time now (probably over a year).  We're not making as
much use of the 4 accumulator registers as we should.

In truth, I don't think we ever really made good use of them anyway.
ISTR that trivial modifications of the testcase failed even before
the regression.

Richard

Reply via email to