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

            Bug ID: 120050
           Summary: [15/16 Regression] Fail to bootstrap on mips64el with
                    --with-arch=gs464 --with-build-config=bootstrap-O3
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: xry111 at gcc dot gnu.org
  Target Milestone: ---

With GCC-15.1.0, the bootstrap fails on mips64el with --with-arch=gs464
--with-build-config=bootstrap-O3:

Comparing stages 2 and 3                                                        
Bootstrap comparison failure!                                                   
gcc/options-urls.o differs                                                      
gcc/tree-ssa-loop-niter.o differs                                               
gcc/gimple-match-6.o differs                                                    
gcc/explow.o differs                                                            
gcc/ipa-modref-tree.o differs                                                   
gcc/targhooks.o differs                                                         
gcc/gimple-ssa-store-merging.o differs                                          
gcc/tree-ssa-loop-ch.o differs                                                  
gcc/mips.o differs
gcc/symtab.o differs 
gcc/gimple-match-2.o differs
gcc/tree-ssa-reassoc.o differs
gcc/json-parsing.o differs
gcc/value-relation.o differs
gcc/ipa-cp.o differs 
gcc/reload1.o differs
gcc/stor-layout.o differs
gcc/cp/typeck.o differs
gcc/cp/constexpr.o differs
gcc/cp/decl.o differs
gcc/cp/except.o differs
gcc/cp/semantics.o differs
gcc/cp/module.o differs
gcc/cp/tree.o differs
gcc/cp/pt.o differs
gcc/cp/parser.o differs
gcc/cp/cvt.o differs 
gcc/cp/call.o differs
gcc/cp/name-lookup.o differs
gcc/cp/init.o differs
gcc/cp/optimize.o differs
gcc/tree-ssa-forwprop.o differs
gcc/expr.o differs
gcc/predict.o differs
gcc/simplify-rtx.o differs
gcc/combine.o differs
gcc/pointer-query.o differs
gcc/tree-outof-ssa.o differs
gcc/opts-common.o differs
gcc/fold-const.o differs
gcc/build/genpreds.o differs
gcc/c/c-decl.o differs
gcc/c/c-typeck.o differs
gcc/fortran/simplify.o differs
gcc/fortran/trans-expr.o differs
gcc/fortran/scanner.o differs
gcc/fortran/decl.o differs
gcc/fortran/parse.o differs
gcc/fortran/f95-lang.o differs
gcc/fortran/intrinsic.o differs
gcc/fortran/resolve.o differs
gcc/fortran/check.o differs
gcc/fortran/module.o differs
gcc/fortran/trans-decl.o differs
gcc/fortran/openmp.o differs
gcc/fortran/array.o differs
gcc/fortran/trans-array.o differs
gcc/cgraph.o differs 
gcc/gimple-match-3.o differs
gcc/ipa-inline.o differs
gcc/tree-stdarg.o differs
gcc/vr-values.o differs
gcc/gimple-ssa-warn-restrict.o differs
gcc/recog.o differs
gcc/tree-ssa-ccp.o differs
gcc/asan.o differs
gcc/c-family/c-warn.o differs
gcc/c-family/c-ada-spec.o differs
gcc/c-family/c-format.o differs
gcc/tree-ssa-dom.o differs
gcc/tree.o differs
gcc/dwarf2out.o differs
gcc/insn-attrtab.o differs
gcc/generic-match-9.o differs
gcc/ipa-inline-transform.o differs
gcc/gimple-fold.o differs
gcc/tree-vect-loop.o differs
gcc/generic-match-7.o differs
gcc/gimple-range-fold.o differs
gcc/gimple-match-10.o differs
gcc/insn-automata.o differs
gcc/varasm.o differs 
gcc/gimple-match-8.o differs
gcc/gimplify.o differs
gcc/generic-match-4.o differs
gcc/gimple-match-1.o differs
gcc/calls.o differs
gcc/insn-recog-8.o differs
gcc/tree-ssa-strlen.o differs
gcc/objc/objc-encoding.o differs
gcc/objc/objc-act.o differs
gcc/wide-int.o differs
gcc/lto/lto-lang.o differs
gcc/gimple-match-9.o differs
gcc/tree-predcom.o differs
gcc/ipa-devirt.o differs
gcc/gimple-match-7.o differs
gcc/tree-ssa-alias.o differs
gcc/gimple-match-5.o differs
gcc/gtype-desc.o differs
gcc/cfgloop.o differs
gcc/insn-recog-3.o differs
gcc/sel-sched.o differs
gcc/gimple-match-4.o differs
gcc/ipa-polymorphic-call.o differs
gcc/tree-vect-stmts.o differs
gcc/tree-inline.o differs
libbacktrace/.libs/mmap.o differs
libbacktrace/mmap.o differs
libcpp/expr.o differs
libcpp/lex.o differs 
libdecnumber/decNumber.o differs

Bootstrapping the trunk (PR 119929 locally patched) with the same configuration
results an ICE instead:

/root/gcc15/build/./gcc/xgcc -B/root/gcc15/build/./gcc/
-B/usr/local/mips64el-unknown-linux-gnuabi64/bin/
-B/usr/local/mips64el-unknown-linux-gnuabi64/lib/ -isystem
/usr/local/mips64el-unknown-linux-gnuabi64/include -isystem
/usr/local/mips64el-unknown-linux-gnuabi64/sys-include   -fno-checking -g -O2
-minterlink-mips16 -O2  -g -O2 -minterlink-mips16 -DIN_GCC   -W -Wall
-Wno-error=narrowing -Wwrite-strings -Wcast-qual -W strict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g
-DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector  -fPIC -I. -I.
-I../.././gcc -I../../../gcc/libgcc -I../../../gcc/libgcc/.
-I../../../gcc/libgcc/../gcc -I../../../gcc/libgcc/../include  -DHAVE_CC_TLS  
-o _muldi3.o -MT _muldi3.o -MD -MP -MF _muldi3.dep -DL_muldi3 -c
../../../gcc/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
during RTL pass: expand
In file included from ../../../gcc/libgcc/libgcc2.c:56:
../../../gcc/libgcc/libgcc2.c: In function ‘__multi3’:
../../../gcc/libgcc/libgcc2.h:216:25: internal compiler error: in
to_reg_br_prob_note, at profile-count.h:299
  216 | #define __NDW(a,b)      __ ## a ## ti ## b
      |                         ^~
../../../gcc/libgcc/libgcc2.h:286:25: note: in expansion of macro ‘__NDW’
  286 | #define __muldi3        __NDW(mul,3)
      |                         ^~~~~
../../../gcc/libgcc/libgcc2.c:528:1: note: in expansion of macro ‘__muldi3’
  528 | __muldi3 (DWtype u, DWtype v)
      | ^~~~~~~~
0x12215fcff internal_error(char const*, ...)
        ../../gcc/gcc/diagnostic-global-context.cc:517
0x120255e63 fancy_abort(char const*, int, char const*)
        ../../gcc/gcc/diagnostic.cc:1748
0x120b9a45f profile_probability::to_reg_br_prob_note() const
        ../../gcc/gcc/profile-count.h:299
0x120b9a45f add_reg_br_prob_note(rtx_insn*, profile_probability)
        ../../gcc/gcc/predict.cc:977
0x120b13c03 emit_cmp_and_jump_insn_1
        ../../gcc/gcc/optabs.cc:4701
0x120b13c03 emit_cmp_and_jump_insns(rtx_def*, rtx_def*, rtx_code, rtx_def*,
machine_mode, int, tree_node*, rtx_def*, profile_probability)
        ../../gcc/gcc/optabs.cc:4827
0x1205b3cff do_compare_rtx_and_jump(rtx_def*, rtx_def*, rtx_code, int,
tree_node*, machine_mode, rtx_def*, rtx_code_label*, rtx_code_label*,
profile_probability)
        ../../gcc/gcc/dojump.cc:1256
0x1205b6247 do_compare_and_jump
        ../../gcc/gcc/dojump.cc:1330
0x1204efeb7 expand_gimple_cond
        ../../gcc/gcc/cfgexpand.cc:2957
0x1204f08ff expand_gimple_basic_block
        ../../gcc/gcc/cfgexpand.cc:6280
0x1204f3407 execute
        ../../gcc/gcc/cfgexpand.cc:7176
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[3]: *** [Makefile:512: _muldi3.o] Error 1
make[3]: Leaving directory
'/root/gcc15/build/mips64el-unknown-linux-gnuabi64/libgcc'
make[2]: *** [Makefile:20140: all-stage2-target-libgcc] Error 2    

GCC-14 works with the configuration.

Reply via email to