http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57362
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Known to work| |4.7.3 Version|unknown |4.8.1 Keywords| |ice-on-invalid-code Last reconfirmed| |2013-05-22 CC| |tmsriram at google dot com Ever confirmed|0 |1 Summary|unsupported |[4.8/4.9 Regression] |__attribute__((target())) |unsupported |values appear to cause loop |__attribute__((target())) |and/or pathological |values appear to cause loop |behavior |and/or pathological | |behavior Target Milestone|--- |4.8.1 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Works fine with the C compiler, for the C++ compiler we ICE: ... lots of errors ... t.c:18:5: error: No dispatcher found for align-stringops int foo(void) { return 1; } ^ t.c:187:20: internal compiler error: Segmentation fault result = foo(); ^ 0xc647e5 crash_signal /space/rguenther/src/svn/gcc-4_8-branch/gcc/toplev.c:332 0x53f4cb contains_struct_check(tree_node*, tree_node_structure_enum, char const*, int, char const*) /space/rguenther/src/svn/gcc-4_8-branch/gcc/tree.h:3797 0x9b6742 build_fold_addr_expr_loc(unsigned int, tree_node*) /space/rguenther/src/svn/gcc-4_8-branch/gcc/fold-const.c:7693 0xf498fa add_condition_to_bb /space/rguenther/src/svn/gcc-4_8-branch/gcc/config/i386/i386.c:28536 0xf4a6d0 dispatch_function_versions /space/rguenther/src/svn/gcc-4_8-branch/gcc/config/i386/i386.c:28951 0xf4c178 ix86_generate_version_dispatcher_body /space/rguenther/src/svn/gcc-4_8-branch/gcc/config/i386/i386.c:29517 you cannot query for acceptable values by re-annotating the same decl. GCC 4.7 happily says ... t.c:176:5: error: redefinition of 'int foo()' t.c:2:5: error: 'int foo()' previously defined here t.c: At global scope: t.c:178:13: error: attribute(target("avx256-split-unaligned-store")) is unknown t.c: In function 'int foo()': t.c:178:5: error: redefinition of 'int foo()' t.c:2:5: error: 'int foo()' previously defined here t.c: At global scope: t.c:180:13: error: attribute(target("rtm")) is unknown t.c: In function 'int foo()': t.c:180:5: error: redefinition of 'int foo()' t.c:2:5: error: 'int foo()' previously defined here and does not ICE. Google folks - please have a look.