https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99127
--- Comment #6 from Kurt Miller <kurt at intricatesoftware dot com> ---
For clarity, I see now there are two reduced test cases. My test patch fixed
the initial reduced test case but not the second one.
apoc$ cat pr99127.i
int c_pow_r_1, c_pow_r_0, c_pow_phase;
void
c_pow() {
c_pow_r_0 = __builtin_cos(c_pow_phase);
c_pow_r_1 = __builtin_sin(c_pow_phase);
}
apoc$ egcc -c -O1 -o pr99127.o pr99127.i
apoc$
apoc$ cat pr99127a.i
int c_pow_r_1, c_pow_r_0, c_pow_phase;
void
c_pow() {
_Complex double r = __builtin_cexpi(c_pow_phase);
c_pow_r_0 = __real__ r;
c_pow_r_1 = __imag__ r;
}
apoc$ egcc -c -O1 -o pr99127a.o pr99127a.i
during RTL pass: expand
pr99127a.i: In function 'c_pow':
pr99127a.i:5:23: internal compiler error: in expand_expr_addr_expr_1, at
expr.c:8026
_Complex double r = __builtin_cexpi(c_pow_phase);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
libbacktrace could not find executable to open
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.
apoc$