http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59379
Bug ID: 59379
Summary: gomp_init_num_threads is compiled into an infinite
loop with --with-arch=corei7 --with-cpu=slm
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: hjl.tools at gmail dot com
CC: areg.melikadamyan at gmail dot com
On Linux/x86-64, when GCC revision 205645 configured with
--enable-clocale=gnu --with-system-zlib --with-demangler-in-ld
--enable-languages=c,c++,fortran,java,lto,objc,obj-c++,go --prefix=/usr/local
--enable-gnu-indirect-function --disable-werror
--with-build-config=bootstrap-lto --with-fpmath=sse --with-arch=corei7
--with-cpu=slm
is bootstrapped with "make profiledbootstrap", gomp_init_num_threads
is compiled into an infinite loop:
(gdb) next
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
90 gomp_cpusetp = (cpu_set_t *) gomp_malloc (gomp_cpuset_size);
(gdb)
106 if (CPU_ISSET_S (i - 1, gomp_cpuset_size, gomp_cpusetp))
(gdb)
Stage3 GCC is miscompiled.