http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52891
Bug #: 52891 Summary: ICE in adjust_bool_pattern Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: mer...@savhon.org I seem to have triggered a bug in the tree vectorizer of GCC as of 20120404. $ cat file.c struct S1 { int intfield; struct { unsigned ufield:10; } sfield; }; int func2(short param1, short param2) { int **intptr; if((param1 && param2) + **intptr) while(1); } void func1(void) { struct S1 foo; func2(foo.intfield, foo.sfield.ufield); } $ ~/gcc/dist/bin/gcc --version gcc (GCC) 4.8.0 20120404 (experimental) Copyright (C) 2012 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ ~/gcc/dist/bin/gcc -O2 -ftree-vectorize file.c Using built-in specs. COLLECT_GCC=/home/merkil/gcc/dist/bin/gcc COLLECT_LTO_WRAPPER=/home/merkil/gcc/dist/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: ../srcdir/configure --prefix=/home/merkil/gcc/dist CFLAGS=' -O2 -pipe' CXXFLAGS=' -O2 -pipe' --enable-languages=c,c++,lto Thread model: posix gcc version 4.8.0 20120404 (experimental) (GCC) COLLECT_GCC_OPTIONS='-O2' '-ftree-vectorize' '-v' '-mtune=generic' '-march=x86-64' /home/merkil/gcc/dist/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/cc1 -quiet -v file.c -quiet -dumpbase file.c -mtune=generic -march=x86-64 -auxbase file -O2 -version -ftree-vectorize -o /tmp/ccuzSuSy.s GNU C (GCC) version 4.8.0 20120404 (experimental) (x86_64-unknown-linux-gnu) compiled by GNU C version 4.8.0 20120404 (experimental), GMP version 5.0.4, MPFR version 3.1.0-p3, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 ignoring nonexistent directory "/home/merkil/gcc/dist/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/../../../../x86_64-unknown-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /home/merkil/gcc/dist/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include /usr/local/include /home/merkil/gcc/dist/include /home/merkil/gcc/dist/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include-fixed /usr/include End of search list. GNU C (GCC) version 4.8.0 20120404 (experimental) (x86_64-unknown-linux-gnu) compiled by GNU C version 4.8.0 20120404 (experimental), GMP version 5.0.4, MPFR version 3.1.0-p3, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 77c744b2fbaa15d9025679f4b671f18a file.c: In function 'func1': file.c:19:6: internal compiler error: in adjust_bool_pattern, at tree-vect-patterns.c:2301 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Hope that is useful to you :-)