https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87761

            Bug ID: 87761
           Summary: [9 regression][MIPS] New FAIL:
                    gcc.target/mips/fix-r4000-10.c   -O1 start with
                    r265398
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: paul.hua.gm at gmail dot com
  Target Milestone: ---

paulhua@gcc122:~/debug_r265398$ cat fix-r4000-10.i
# 1
"/home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/fix-r4000-10.c"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1
"/home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/fix-r4000-10.c"





typedef unsigned long long uint64_t;
typedef unsigned int uint128_t __attribute__((mode(TI)));
__attribute__((nomips16)) uint128_t foo (uint64_t x, uint64_t y) { return
(uint128_t) x * y; }


paulhua@gcc122:~/debug_r265398$ ~/build/gcc_397_obj/gcc/cc1 -fpreprocessed
fix-r4000-10.i -mel -quiet -dumpbase fix-r4000-10.c -dp -mips3 -mgp64
-mno-micromips -mno-mips3d -mno-dsp -mno-dspr2 -mfix-r4000 -mno-paired-single
-mno-synci -mnan=legacy -mabi=64 -mllsc -mno-shared -auxbase-strip
fix-r4000-10.s -O1 -version -fdiagnostics-color=never
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fno-split-wide-types -ffat-lto-objects -fno-ident -o fix-r4000-10.s
-mno-abicalls

good:
paulhua@gcc122:~/debug_r265398$ cat fix-r4000-10.s 
        .file   1 "fix-r4000-10.c"
        .section .mdebug.abi64
        .previous
        .nan    legacy
        .gnu_attribute 4, 1
        .text
        .align  2
        .globl  foo
        .set    nomips16
        .ent    foo
        .type   foo, @function
foo:
        .frame  $sp,0,$31               # vars= 0, regs= 0/0, args= 0, gp= 0
        .mask   0x00000000,0
        .fmask  0x00000000,0
        dmultu  $4,$5    # 17   [c=48 l=12]  umulditi3_r4000
        mflo    $2
        mfhi    $3
        jr      $31      # 39   [c=0 l=8]  *simple_return
        .end    foo
        .size   foo, .-foo

after r265398 bad asm:
paulhua@gcc122:~/debug_r265398$ cat fix-r4000-10.s 

        .file   1 "fix-r4000-10.c"
        .section .mdebug.abi64
        .previous
        .nan    legacy
        .text
        .align  2
        .globl  foo
        .set    nomips16
        .ent    foo
        .type   foo, @function
foo:
        .frame  $sp,0,$31               # vars= 0, regs= 0/0, args= 0, gp= 0
        .mask   0x00000000,0
        .fmask  0x00000000,0
        move    $6,$5    # 34   [c=4 l=4]  *movdi_64bit/0
        move    $2,$4    # 10   [c=4 l=4]  *movdi_64bit/0
        dmultu  $2,$6    # 17   [c=48 l=12]  umulditi3_r4000
        mflo    $2
        mfhi    $3
        jr      $31      # 43   [c=0 l=8]  *simple_return
        .end    foo
        .size   foo, .-foo

Reply via email to