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

            Bug ID: 79462
           Summary: sh: Stack smashing detected when building __ashrdi3 in
                    libgcc
           Product: gcc
           Version: 7.0.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dhowells at redhat dot com
  Target Milestone: ---

Stack smashing is detected on some host arches (i686, ppc64, for example, but
not x86_64) when building libgcc for an sh-target cross compiler:

/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/xgcc
-B/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/
-B/usr/sh-linux-gnu/bin/ -B/usr/sh-linux-gnu/lib/ -isystem
/usr/sh-linux-gnu/include -isystem /usr/sh-linux-gnu/sys-include    -g -O2
-Wall -fexceptions -m2 -O2  -g -O2 -Wall -fexceptions -DIN_GCC 
-DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition 
-isystem ./include   -fpic -DNO_FPSCR_VALUES -w -Wno-sync-nand -g -DIN_LIBGCC2
-fbuilding-libgcc -fno-stack-protector -Dinhibit_libc  -fpic -DNO_FPSCR_VALUES
-w -Wno-sync-nand -I. -I. -I../../.././gcc
-I../../../../gcc-7.0.1-20170209/libgcc
-I../../../../gcc-7.0.1-20170209/libgcc/.
-I../../../../gcc-7.0.1-20170209/libgcc/../gcc
-I../../../../gcc-7.0.1-20170209/libgcc/../include  -DHAVE_CC_TLS  -o
_ashrdi3.o -MT _ashrdi3.o -MD -MP -MF _ashrdi3.dep -DL_ashrdi3 -c
../../../../gcc-7.0.1-20170209/libgcc/libgcc2.c -fvisibility=hidden
-DHIDE_EXPORTS
*** stack smashing detected ***:
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1 terminated
======= Backtrace: =========
/lib64/libc.so.6(+0x969b8)[0x3fff947069b8]
/lib64/libc.so.6(__fortify_fail+0x54)[0x3fff947d2fc4]
/lib64/libc.so.6(__stack_chk_fail+0x20)[0x3fff947d2f60]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z14gen_cbranchdi4P7rtx_defS0_S0_S0_+0xd4)[0x10b904c4]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z23emit_cmp_and_jump_insnsP7rtx_defS0_8rtx_codeS0_12machine_modeiS0_i+0x170)[0x105e4b70]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z23do_compare_rtx_and_jumpP7rtx_defS0_8rtx_codei12machine_modeS0_P14rtx_code_labelS4_i+0x214)[0x102ff1a4]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x105ed30c]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z12expand_binop12machine_mode9optab_tagP7rtx_defS2_S2_i13optab_methods+0x1d54)[0x105ec814]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z12expand_binop12machine_mode9optab_tagP7rtx_defS2_S2_i13optab_methods+0x5b8)[0x105eb078]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x1039e220]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z18expand_expr_real_2P12separate_opsP7rtx_def12machine_mode15expand_modifier+0x3aa8)[0x103ca268]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z18expand_expr_real_1P9tree_nodeP7rtx_def12machine_mode15expand_modifierPS2_b+0x2f54)[0x103b6d14]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x103c5f7c]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z17expand_assignmentP9tree_nodeS0_b+0x5b8)[0x103c2e68]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x102743e0]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x10276178]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x1027ca08]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z16execute_one_passP8opt_pass+0x334)[0x10611e54]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x10612e04]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_Z17execute_pass_listP8functionP8opt_pass+0x38)[0x10612ea8]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_ZN11cgraph_node6expandEv+0x170)[0x102b85d0]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x102ba0e4]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_ZN12symbol_table25finalize_compilation_unitEv+0x1ec)[0x102bc61c]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1[0x1071e04c]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(_ZN6toplev4mainEiPPc+0xfcc)[0x101199ec]
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/./gcc/cc1(main+0x54)[0x1011bb34]
/lib64/libc.so.6(+0x22b20)[0x3fff94692b20]
/lib64/libc.so.6(__libc_start_main+0xb8)[0x3fff94692d18]
======= Memory map: ========
10000000-11100000 r-xp 00000000 fc:05 9181442                           
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/gcc/cc1
11100000-11130000 r--p 010f0000 fc:05 9181442                           
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/gcc/cc1
11130000-11140000 rw-p 01120000 fc:05 9181442                           
/builddir/build/BUILD/gcc-7.0.1-20170209/sh-linux-gnu/gcc/cc1
11140000-11220000 rw-p 00000000 00:00 0 
1000d640000-1000d880000 rw-p 00000000 00:00 0                            [heap]
3fff92660000-3fff94670000 rw-p 00000000 00:00 0 
3fff94670000-3fff94880000 r-xp 00000000 fc:05 5123537                   
/usr/lib64/libc-2.25.so
3fff94880000-3fff94890000 r--p 00200000 fc:05 5123537                   
/usr/lib64/libc-2.25.so
3fff94890000-3fff948a0000 rw-p 00210000 fc:05 5123537                   
/usr/lib64/libc-2.25.so
3fff948a0000-3fff948c0000 r-xp 00000000 fc:05 5123183                   
/usr/lib64/libgcc_s-7-20170204.so.1
3fff948c0000-3fff948d0000 r--p 00010000 fc:05 5123183                   
/usr/lib64/libgcc_s-7-20170204.so.1
3fff948d0000-3fff948e0000 rw-p 00020000 fc:05 5123183                   
/usr/lib64/libgcc_s-7-20170204.so.1
3fff948e0000-3fff949c0000 r-xp 00000000 fc:05 5123547                   
/usr/lib64/libm-2.25.so
3fff949c0000-3fff949d0000 r--p 000d0000 fc:05 5123547                   
/usr/lib64/libm-2.25.so
3fff949d0000-3fff949e0000 rw-p 000e0000 fc:05 5123547                   
/usr/lib64/libm-2.25.so
3fff949e0000-3fff94bf0000 r-xp 00000000 fc:05 5123732                   
/usr/lib64/libstdc++.so.6.0.23
3fff94bf0000-3fff94c00000 r--p 00200000 fc:05 5123732                   
/usr/lib64/libstdc++.so.6.0.23
3fff94c00000-3fff94c10000 rw-p 00210000 fc:05 5123732                   
/usr/lib64/libstdc++.so.6.0.23
3fff94c10000-3fff94c30000 r-xp 00000000 fc:05 5123681                   
/usr/lib64/libz.so.1.2.11
3fff94c30000-3fff94c40000 r--p 00010000 fc:05 5123681                   
/usr/lib64/libz.so.1.2.11
3fff94c40000-3fff94c50000 rw-p 00000000 00:00 0 
3fff94c50000-3fff94ce0000 r-xp 00000000 fc:05 5123699                   
/usr/lib64/libgmp.so.10.3.2
3fff94ce0000-3fff94cf0000 r--p 00080000 fc:05 5123699                   
/usr/lib64/libgmp.so.10.3.2
3fff94cf0000-3fff94d00000 rw-p 00090000 fc:05 5123699                   
/usr/lib64/libgmp.so.10.3.2
3fff94d00000-3fff94d80000 r-xp 00000000 fc:05 5123736                   
/usr/lib64/libmpfr.so.4.1.5
3fff94d80000-3fff94d90000 r--p 00070000 fc:05 5123736                   
/usr/lib64/libmpfr.so.4.1.5
3fff94d90000-3fff94da0000 rw-p 00000000 00:00 0 
3fff94da0000-3fff94dc0000 r-xp 00000000 fc:05 5123805                   
/usr/lib64/libmpc.so.3.0.0
3fff94dc0000-3fff94dd0000 r--p 00010000 fc:05 5123805                   
/usr/lib64/libmpc.so.3.0.0
3fff94dd0000-3fff94de0000 rw-p 00000000 00:00 0 
3fff94de0000-3fff94df0000 r-xp 00000000 fc:05 5123545                   
/usr/lib64/libdl-2.25.so
3fff94df0000-3fff94e00000 r--p 00000000 fc:05 5123545                   
/usr/lib64/libdl-2.25.so
3fff94e00000-3fff94e20000 rw-p 00000000 00:00 0 
3fff94e20000-3fff94e40000 r-xp 00000000 00:00 0                          [vdso]
3fff94e40000-3fff94e80000 r-xp 00000000 fc:05 5123530                   
/usr/lib64/ld-2.25.so
3fff94e80000-3fff94e90000 r--p 00030000 fc:05 5123530                   
/usr/lib64/ld-2.25.so
3fff94e90000-3fff94ea0000 rw-p 00040000 fc:05 5123530                   
/usr/lib64/ld-2.25.so
3fffc9510000-3fffc9540000 rw-p 00000000 00:00 0                         
[stack]
../../../../gcc-7.0.1-20170209/libgcc/libgcc2.c: In function '__ashrdi3':
../../../../gcc-7.0.1-20170209/libgcc/libgcc2.c:472:15: internal compiler
error: Aborted
       w.s.low = uu.s.high >> -bm;
       ~~~~~~~~^~~~~~~~~~~~~~~~~~
0x1071dba3 crash_signal
        ../../gcc-7.0.1-20170209/gcc/toplev.c:333
0x10b904c3 gen_cbranchdi4(rtx_def*, rtx_def*, rtx_def*, rtx_def*)
        ../../gcc-7.0.1-20170209/gcc/config/sh/sh.md:1333
0x105e4b6f insn_gen_fn::operator()(rtx_def*, rtx_def*, rtx_def*, rtx_def*)
const
        ../../gcc-7.0.1-20170209/gcc/recog.h:303
0x105e4b6f emit_cmp_and_jump_insn_1
        ../../gcc-7.0.1-20170209/gcc/optabs.c:3995
0x105e4b6f emit_cmp_and_jump_insns(rtx_def*, rtx_def*, rtx_code, rtx_def*,
machine_mode, int, rtx_def*, int)
        ../../gcc-7.0.1-20170209/gcc/optabs.c:4052
0x102ff1a3 do_compare_rtx_and_jump(rtx_def*, rtx_def*, rtx_code, int,
machine_mode, rtx_def*, rtx_code_label*, rtx_code_label*, int)
        ../../gcc-7.0.1-20170209/gcc/dojump.c:1144
0x105ed30b expand_doubleword_shift
        ../../gcc-7.0.1-20170209/gcc/optabs.c:695
0x105ec813 expand_binop(machine_mode, optab_tag, rtx_def*, rtx_def*, rtx_def*,
int, optab_methods)
        ../../gcc-7.0.1-20170209/gcc/optabs.c:1426
0x105eb077 expand_binop(machine_mode, optab_tag, rtx_def*, rtx_def*, rtx_def*,
int, optab_methods)
        ../../gcc-7.0.1-20170209/gcc/optabs.c:1293
0x1039e21f expand_shift_1
        ../../gcc-7.0.1-20170209/gcc/expmed.c:2443
0x103ca267 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
        ../../gcc-7.0.1-20170209/gcc/expr.c:9179
0x103b6d13 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        ../../gcc-7.0.1-20170209/gcc/expr.c:9730
0x103c5f7b expand_normal
        ../../gcc-7.0.1-20170209/gcc/expr.h:282
0x103c5f7b store_field
        ../../gcc-7.0.1-20170209/gcc/expr.c:6833
0x103c2e67 expand_assignment(tree_node*, tree_node*, bool)
        ../../gcc-7.0.1-20170209/gcc/expr.c:5169
0x102743df expand_gimple_stmt_1
        ../../gcc-7.0.1-20170209/gcc/cfgexpand.c:3639
0x102743df expand_gimple_stmt
        ../../gcc-7.0.1-20170209/gcc/cfgexpand.c:3737
0x10276177 expand_gimple_basic_block
        ../../gcc-7.0.1-20170209/gcc/cfgexpand.c:5744
0x1027ca07 execute
        ../../gcc-7.0.1-20170209/gcc/cfgexpand.c:6357

Reply via email to