https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485
Bug ID: 68485
Summary: ICE while building gpsd package on microblaze
Product: gcc
Version: 5.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: sergio.pr...@e-labworks.com
Target Milestone: ---
Package gpsd 3.15 fails to build with an internal compiler error on the
microblaze architecture.
This is the build command used (toolchain generated from Buildroot):
/home/sprado/workspace/build/buildroot/bugs/6872/host/usr/bin/microblazeel-buildroot-linux-gnu-gcc
-o rtcm2_json.os -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS=64 -Os
--sysroot=/home/sprado/workspace/build/buildroot/bugs/6872/host/usr/microblazeel-buildroot-linux-gnu/sysroot
-Wextra -Wall -Wno-uninitialized -Wno-missing-field-initializers -Wcast-align
-Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
-Wreturn-type -pthread -Wmissing-declarations -pthread -fPIC -O2
"-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" rtcm2_json.c
This is the error message:
:0:0: warning: "_LARGEFILE_SOURCE" redefined
:0:0: note: this is the location of the previous definition
rtcm2_json.c: In function ‘json_rtcm2_read’:
rtcm2_json.c:258:1: internal compiler error: in gen_reg_rtx, at emit-rtl.c:1027
}
^
Apparently the problem is related to optimization. Disabling -fschedule-insns
and -fexpensive-optimizations fix the problem.