I ran the test case on 3.4.1 through 4.1.2, all with the same error message.
This bug may be related to #25160.
Test Case:
#include <spe.h>
__ev64_fs__ x;
int main(void)
{
x = __ev_fsabs(x);
return(0);
}
O.K., x put in .bss:
C:\Controller>powerpc-elf-eabispe-gcc -c -Wa,-alhs=test.lst -fverbose-asm
-msdata=eabi -G 7 test.c
ERR, x put in .sbss (GCC4.1.2):
C:\Controller>powerpc-elf-eabispe-gcc -c -Wa,-alhs=test.lst -fverbose-asm
-msdata=eabi -G 8 test.c
test.c: In function 'main':
test.c:10: internal compiler error: in print_operand, at
config/rs6000/rs6000.c:
10785
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
--
Summary: ICE on attempt to put SPE vector variables in SDA
Product: gcc
Version: 4.1.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: m dot reszat at kostal dot com
GCC host triplet: i686-pc-cygwin
GCC target triplet: powerpc-elf-eabispe
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31535