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

--- Comment #9 from Matthias Klose <doko at gcc dot gnu.org> ---
Program received signal SIGSEGV, Segmentation fault.
0x00000000041176b8 in riscv_block_move_straight (dest=dest@entry=0x3fff5a78c00,
src=src@entry=0x3fff5a78ba0, 
    length=length@entry=4, align=align@entry=64) at
../../src/gcc/config/riscv/riscv-string.cc:819
819       regs = XALLOCAVEC (rtx, length / delta - 1);

(gdb) bt
#0  0x00000000041176b8 in riscv_block_move_straight
(dest=dest@entry=0x3fff5a78c00,
    src=src@entry=0x3fff5a78ba0, length=length@entry=4, align=align@entry=64)
    at ../../src/gcc/config/riscv/riscv-string.cc:819
#1  0x000000000411a8dc in riscv_block_move_loop (dest=0x3fff5a78c00,
src=0x3fff5a78ba0,
    length=18446744073709551615, align=64, bytes_per_iter=<optimized out>)
    at ../../src/gcc/config/riscv/riscv-string.cc:904
#2  riscv_expand_block_move_scalar (dest=0x7, src=0x3fff5a78c18,
length=0x3fff5a78bb8)
    at ../../src/gcc/config/riscv/riscv-string.cc:959
#3  riscv_expand_block_move (dest=dest@entry=0x3fff5a78b28,
src=src@entry=0x3fff5a78b40,
    length=length@entry=0x3fff5a44d20) at
../../src/gcc/config/riscv/riscv-string.cc:983
#4  0x00000000038ad4b0 in gen_cpymemdi (operand0=0x3fff5a78b28,
operand1=0x3fff5a78b40,
    operand2=0x3fff5a44d20, operand3=<optimized out>) at
../../src/gcc/config/riscv/riscv.md:2779
#5  0x0000000002077ae2 in maybe_expand_insn
(icode=icode@entry=CODE_FOR_cpymemdi, nops=nops@entry=4,
    ops=ops@entry=0x3ffffff8180) at ../../src/gcc/optabs.cc:8237
#6  0x0000000001cd6692 in emit_block_move_via_pattern (x=<optimized out>,
x@entry=0x3fff5a78b28,
    y=<optimized out>, y@entry=0x3fff5a78b40, size=size@entry=0x3fff5a44d20,
align=align@entry=64,
    expected_align=64, expected_align@entry=0, expected_size=-1, min_size=100,
max_size=100,
    probable_max_size=100, might_overlap=false) at ../../src/gcc/expr.cc:2323
#7  0x0000000001cf8226 in emit_block_move_hints (x=<optimized out>,
y=<optimized out>, size=0x3fff5a44d20,
    method=BLOCK_OP_NORMAL, expected_align=expected_align@entry=0,
expected_size=-1, min_size=100,
    max_size=100, probable_max_size=100, bail_out_libcall=false,
is_move_done=0x0, might_overlap=false,
    ctz_size=0) at ../../src/gcc/expr.cc:2103
#8  0x0000000001cf86fa in emit_block_move (x=x@entry=0x3fff5a78ae0,
y=y@entry=0x3fff5a78af8,
    size=<optimized out>, method=method@entry=BLOCK_OP_NORMAL,
ctz_size=ctz_size@entry=0)
    at ../../src/gcc/expr.cc:2167
#9  0x0000000001cfd89c in store_expr (exp=exp@entry=0x3fff744f428,
target=target@entry=0x3fff5a78ae0,
    call_param_p=call_param_p@entry=0, nontemporal=<optimized out>,
nontemporal@entry=false,
    reverse=<optimized out>, reverse@entry=false) at ../../src/gcc/expr.cc:6948
#10 0x0000000001d075de in store_field (target=target@entry=0x3fff5a78ab0,
bitsize=..., bitpos=...,
    bitregion_start=..., bitregion_end=..., mode=E_BLKmode, exp=0x3fff744f428,
alias_set=0,
    nontemporal=false, reverse=false) at ../../src/gcc/expr.cc:8373
#11 0x0000000001d01178 in expand_assignment (to=0x3fff745be40,
from=from@entry=0x3fff744f428, warning: left shift count is negative
warning: left shift count is negative

    nontemporal=nontemporal@entry=false) at ../../src/gcc/expr.cc:6343
#12 0x0000000001d03290 in expand_assignment (to=<optimized out>,
from=from@entry=0x3fff744f428, warning: left shift count is negative
warning: left shift count is negative

    nontemporal=nontemporal@entry=false) at ../../src/gcc/expr.cc:6496
#13 0x0000000001b6fe1a in expand_gimple_stmt_1 (stmt=0x3fff74e4d68) at
../../src/gcc/cfgexpand.cc:4283
#14 expand_gimple_stmt (stmt=stmt@entry=0x3fff74e4d68) at
../../src/gcc/cfgexpand.cc:4364
#15 0x0000000001b76e5a in expand_gimple_basic_block (bb=<optimized out>,
    disable_tail_calls=disable_tail_calls@entry=false) at
../../src/gcc/cfgexpand.cc:6427
#16 0x0000000001b79df8 in (anonymous namespace)::pass_expand::execute
(this=<optimized out>,
    fun=0x3fff7f1d8f0) at ../../src/gcc/cfgexpand.cc:7176
#17 0x00000000020c1ba4 in execute_one_pass (pass=pass@entry=0x5c2e710) at
../../src/gcc/passes.cc:2659
#18 0x00000000020c2654 in execute_pass_list_1 (pass=0x5c2e710) at
../../src/gcc/passes.cc:2768
#19 0x00000000020c26c2 in execute_pass_list (fn=<optimized out>,
pass=<optimized out>)
    at ../../src/gcc/passes.cc:2779
#20 0x0000000001bc7b24 in cgraph_node::expand (this=0x3fff7466aa0) at
../../src/gcc/context.h:48
#21 cgraph_node::expand (this=0x3fff7466aa0) at
../../src/gcc/cgraphunit.cc:1812
#22 0x0000000001bc97a8 in expand_all_functions () at
../../src/gcc/cgraphunit.cc:2042
#23 symbol_table::compile (this=this@entry=0x3fff7306000) at
../../src/gcc/cgraphunit.cc:2418
#24 0x0000000001bcd000 in symbol_table::compile (this=0x3fff7306000) at
../../src/gcc/cgraphunit.cc:2329
#25 symbol_table::finalize_compilation_unit (this=0x3fff7306000) at
../../src/gcc/cgraphunit.cc:2603
#26 0x00000000022230a8 in compile_file () at ../../src/gcc/toplev.cc:479
#27 0x00000000017f3858 in do_compile () at ../../src/gcc/toplev.cc:2208
#28 toplev::main (this=this@entry=0x3ffffff95d6, argc=<optimized out>,
argc@entry=51, argv=<optimized out>, 
    argv@entry=0x3ffffff98c8) at ../../src/gcc/toplev.cc:2368
#29 0x00000000017f5fec in main (argc=51, argv=0x3ffffff98c8) at
../../src/gcc/main.cc:39

Reply via email to