https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64083
Bug ID: 64083 Summary: ICE compiling Linux Kernel drivers/isdn/i4l/isdn_net.c Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: sasha.levin at oracle dot com CC: rguenth at gcc dot gnu.org Created attachment 34124 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34124&action=edit Preprocessed source I'm seeing the following ICE when compiling drivers/isdn/i4l/isdn_net.c: $ gcc -v -Wp,-MD,drivers/isdn/i4l/.isdn_net.o.d -nostdinc -isystem /home/sasha/gcc-inst/lib/gcc/x86_64-unknown-linux-gnu/5.0.0/include -I./arch/x86/include -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -m64 -mno-80387 -mno-fp-ret-in-387 -march=core2 -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -fno-reorder-blocks -fno-ipa-cp-clone -fno-partial-inlining -Wframe-larger-than=2048 -fstack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -g -gdwarf-4 -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(isdn_net)" -D"KBUILD_MODNAME=KBUILD_STR(isdn)" -c -o drivers/isdn/i4l/.tmp_isdn_net.o drivers/isdn/i4l/isdn_net.c Using built-in specs. COLLECT_GCC=gcc Target: x86_64-unknown-linux-gnu Configured with: ../configure --prefix=/home/sasha/gcc-inst/ --with-arch=native --with-tune=native --enable-languages=c --enable-lto --enable-gold --enable-stage1-languages=c Thread model: posix gcc version 5.0.0 20140905 (experimental) (GCC) COLLECT_GCC_OPTIONS='-v' '-nostdinc' '-isystem' '/home/sasha/gcc-inst/lib/gcc/x86_64-unknown-linux-gnu/5.0.0/include' '-I' './arch/x86/include' '-I' 'arch/x86/include/generated' '-I' 'include' '-I' './arch/x86/include/uapi' '-I' 'arch/x86/include/generated/uapi' '-I' './include/uapi' '-I' 'include/generated/uapi' '-include' './include/linux/kconfig.h' '-D' '__KERNEL__' '-Wall' '-Wundef' '-Wstrict-prototypes' '-Wno-trigraphs' '-fno-strict-aliasing' '-fno-common' '-Werror=implicit-function-declaration' '-Wno-format-security' '-std=gnu90' '-m64' '-mno-80387' '-mno-fp-ret-in-387' '-march=core2' '-mno-red-zone' '-mcmodel=kernel' '-funit-at-a-time' '-maccumulate-outgoing-args' '-D' 'CONFIG_X86_X32_ABI' '-D' 'CONFIG_AS_CFI=1' '-D' 'CONFIG_AS_CFI_SIGNAL_FRAME=1' '-D' 'CONFIG_AS_CFI_SECTIONS=1' '-D' 'CONFIG_AS_FXSAVEQ=1' '-D' 'CONFIG_AS_CRC32=1' '-D' 'CONFIG_AS_AVX=1' '-D' 'CONFIG_AS_AVX2=1' '-pipe' '-Wno-sign-compare' '-fno-asynchronous-unwind-tables' '-mno-sse' '-mno-mmx' '-mno-sse2' '-mno-3dnow' '-mno-avx' '-fno-delete-null-pointer-checks' '-O2' '--param' 'allow-store-data-races=0' '-fno-reorder-blocks' '-fno-ipa-cp-clone' '-fno-partial-inlining' '-Wframe-larger-than=2048' '-fstack-protector' '-Wno-unused-but-set-variable' '-fno-omit-frame-pointer' '-fno-optimize-sibling-calls' '-fno-var-tracking-assignments' '-g' '-gdwarf-4' '-pg' '-mfentry' '-D' 'CC_USING_FENTRY' '-Wdeclaration-after-statement' '-Wno-pointer-sign' '-fno-strict-overflow' '-fconserve-stack' '-Werror=implicit-int' '-Werror=strict-prototypes' '-Werror=date-time' '-D' 'CC_HAVE_ASM_GOTO' '-D' 'KBUILD_STR(s)=#s' '-D' 'KBUILD_BASENAME=KBUILD_STR(isdn_net)' '-D' 'KBUILD_MODNAME=KBUILD_STR(isdn)' '-c' '-o' 'drivers/isdn/i4l/.tmp_isdn_net.o' /home/sasha/gcc-inst/libexec/gcc/x86_64-unknown-linux-gnu/5.0.0/cc1 -quiet -nostdinc -v -I ./arch/x86/include -I arch/x86/include/generated -I include -I ./arch/x86/include/uapi -I arch/x86/include/generated/uapi -I ./include/uapi -I include/generated/uapi -imultiarch x86_64-linux-gnu -D __KERNEL__ -D CONFIG_X86_X32_ABI -D CONFIG_AS_CFI=1 -D CONFIG_AS_CFI_SIGNAL_FRAME=1 -D CONFIG_AS_CFI_SECTIONS=1 -D CONFIG_AS_FXSAVEQ=1 -D CONFIG_AS_CRC32=1 -D CONFIG_AS_AVX=1 -D CONFIG_AS_AVX2=1 -D CC_USING_FENTRY -D CC_HAVE_ASM_GOTO -D KBUILD_STR(s)=#s -D KBUILD_BASENAME=KBUILD_STR(isdn_net) -D KBUILD_MODNAME=KBUILD_STR(isdn) -isystem /home/sasha/gcc-inst/lib/gcc/x86_64-unknown-linux-gnu/5.0.0/include -include ./include/linux/kconfig.h -MD drivers/isdn/i4l/.isdn_net.o.d drivers/isdn/i4l/isdn_net.c -quiet -dumpbase isdn_net.c -m64 -mno-80387 -mno-fp-ret-in-387 -march=core2 -mno-red-zone -mcmodel=kernel -maccumulate-outgoing-args -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -mfentry -auxbase-strip drivers/isdn/i4l/.tmp_isdn_net.o -g -gdwarf-4 -O2 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror=implicit-function-declaration -Wno-format-security -Wno-sign-compare -Wframe-larger-than=2048 -Wno-unused-but-set-variable -Wdeclaration-after-statement -Wno-pointer-sign -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -std=gnu90 -version -p -fno-strict-aliasing -fno-common -funit-at-a-time -fno-asynchronous-unwind-tables -fno-delete-null-pointer-checks -fno-reorder-blocks -fno-ipa-cp-clone -fno-partial-inlining -fstack-protector -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -fno-strict-overflow -fconserve-stack --param allow-store-data-races=0 -o - | as -v -I ./arch/x86/include -I arch/x86/include/generated -I include -I ./arch/x86/include/uapi -I arch/x86/include/generated/uapi -I ./include/uapi -I include/generated/uapi --64 -o drivers/isdn/i4l/.tmp_isdn_net.o GNU assembler version 2.24 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.24 GNU C (GCC) version 5.0.0 20140905 (experimental) (x86_64-unknown-linux-gnu) compiled by GNU C version 5.0.0 20140905 (experimental), GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 #include "..." search starts here: #include <...> search starts here: ./arch/x86/include arch/x86/include/generated include ./arch/x86/include/uapi arch/x86/include/generated/uapi ./include/uapi include/generated/uapi /home/sasha/gcc-inst/lib/gcc/x86_64-unknown-linux-gnu/5.0.0/include End of search list. GNU C (GCC) version 5.0.0 20140905 (experimental) (x86_64-unknown-linux-gnu) compiled by GNU C version 5.0.0 20140905 (experimental), GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 67714efc1dfc14d898d2d75ac508cc17 drivers/isdn/i4l/isdn_net.c: In function ‘isdn_net_find_icall’: drivers/isdn/i4l/isdn_net.c:2093:1: internal compiler error: in fix_loop_structure, at loop-init.c:252 isdn_net_find_icall(int di, int ch, int idx, setup_parm *setup) ^ 0x8cadf9 fix_loop_structure(bitmap_head*) ../../gcc/loop-init.c:252 0xa48bb6 repair_loop_structures ../../gcc/tree-cfgcleanup.c:775 0xa48bb6 cleanup_tree_cfg() ../../gcc/tree-cfgcleanup.c:805 0x95304c execute_function_todo ../../gcc/passes.c:1704 0x953ae3 execute_todo ../../gcc/passes.c:1808 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. Bisected down to: commit 6437689e431efe19c416e50810609b043bec3f76 Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri Sep 5 13:04:40 2014 +0000 2014-09-05 Richard Biener <rguent...@suse.de> * cfgloop.c (mark_loop_for_removal): Record former header when ENABLE_CHECKING. * cfgloop.h (strut loop): Add former_header member when ENABLE_CHECKING. * loop-init.c (fix_loop_structure): Sanity check loops marked for removal if they re-appeared. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214957 138bc75d-0d04-0410-961f-82ee72b054a4 Preprocessed file attached.