https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123053
Bug ID: 123053
Summary: [Trunk] AArh64: ICE at -O2/O3 during RTL pass: expand
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: xxs_chy at outlook dot com
Target Milestone: ---
Reproducer: https://godbolt.org/z/WK8onzjP7
Testcase:
#include <stdint.h>
struct
{
int32_t f3;
int64_t f4
} g_137, g_138;
struct
{
int8_t f0
} g_174;
int32_t g_67;
uint32_t g_179[];
uint16_t func_71()
{
for (; g_174.f0; g_174.f0 -= 1)
{
g_137.f3 = 0;
for (; g_137.f3 <= 4; g_137.f3 += 1)
for (g_67 = 3; g_67; g_67 -= 1) g_179[g_67] || (g_138.f4 = 0);
}
}
command:
> aarch64-unknown-linux-musl-gcc -O2 -march=armv9-a a.c
gcc dumps:
during RTL pass: expand
<source>: In function 'func_71':
<source>:13:10: internal compiler error: in expand_fn_using_insn, at
internal-fn.cc:270
13 | uint16_t func_71()
| ^~~~~~~
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
See <https://gcc.gnu.org/bugs/> for instructions.
Compiler returned: 1