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

            Bug ID: 122860
           Summary: ICE: in expand_expr_addr_expr_1, at expr.cc
           Product: gcc
           Version: 15.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: 522024330006 at smail dot nju.edu.cn
  Target Milestone: ---

The details can be found here: https://godbolt.org/z/M3PMqTK4e

Program:
```c
#include <stdio.h>

extern int lo_sum(int reg, int offset);

int main() {
    // Simulated address split into high and low parts
    int high = 0x1234;
    int low = 0x5678;
    register unsigned long val asm("r9") = (unsigned long)(&val);

    asm volatile (
        "add %0, %1\n\t"
        : "+r"(val)
        : "i" (lo_sum(high, low)), "r"(high)
        :
    );

    return 0;
}
```

The traceback:
38549.fuzz
during RTL pass: expand
/workspace/exps/featurefuzz/random_combine_feature_set_1_exp/cases/38549.fuzz:
In function 'int main()':
/workspace/exps/featurefuzz/random_combine_feature_set_1_exp/cases/38549.fuzz:15:28:
internal compiler error: in expand_expr_addr_expr_1, at expr.cc:9237
   15 |     register unsigned long val asm("r9") = (unsigned long)(&val);
      |                            ^~~
0x5da1dc8 internal_error(char const*, ...)
        /workspace/install/gcc/src/gcc/gcc/diagnostic-global-context.cc:517
0x5d3f858 fancy_abort(char const*, int, char const*)
        /workspace/install/gcc/src/gcc/gcc/diagnostic.cc:1749
0x1cc205c expand_expr_addr_expr_1
        /workspace/install/gcc/src/gcc/gcc/expr.cc:9237
0x1cc301d expand_expr_addr_expr
        /workspace/install/gcc/src/gcc/gcc/expr.cc:9350
0x1cdeeff expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:12745
0x1cc3d08 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:9538
0x1947500 expand_expr(tree_node*, rtx_def*, machine_mode, expand_modifier)
        /workspace/install/gcc/src/gcc/gcc/expr.h:323
0x1cc615e expand_expr_real_2(separate_ops const*, rtx_def*, machine_mode,
expand_modifier)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:9869
0x1cd0a61 expand_expr_real_gassign(gassign*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:11203
0x1cd1fb1 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:11385
0x1cc3d08 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:9538
0x1cafc71 store_expr(tree_node*, rtx_def*, int, bool, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:6771
0x1cace6a expand_assignment(tree_node*, tree_node*, bool)
        /workspace/install/gcc/src/gcc/gcc/expr.cc:6492
0x199bcc7 expand_gimple_stmt_1
        /workspace/install/gcc/src/gcc/gcc/cfgexpand.cc:4284
0x199c322 expand_gimple_stmt
        /workspace/install/gcc/src/gcc/gcc/cfgexpand.cc:4365
0x19ab6fc expand_gimple_basic_block
        /workspace/install/gcc/src/gcc/gcc/cfgexpand.cc:6483
0x19b0003 execute
        /workspace/install/gcc/src/gcc/gcc/cfgexpand.cc:7232
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.

The gcc version I used is:

Using built-in specs.
COLLECT_GCC=/workspace/install/gcc/install_15.2.0/bin/gcc
COLLECT_LTO_WRAPPER=/workspace/install/gcc/install_15.2.0/libexec/gcc/x86_64-pc-linux-gnu/15.2.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /workspace/install/gcc/src/gcc/configure --enable-coverage
--enable-checking --disable-multilib --disable-shared --disable-bootstrap
--enable-languages=c,c++ --prefix=/workspace/install/gcc/install_15.2.0
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.2.0 (GCC)

Reply via email to