[Bug c++/60082] Certain Cilk keywords executable Hanging for -O1
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Feb 7 13:01:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60082
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
catch_exc.cc FAILs (other than timeout) seem to be a Cilk+ bug, if it ever
worked, it seems to have worked by accident.
The problem is that __cilkrts_rethrow conditionally throws an exception, but is
marked TREE_NOTHROW, thus there are no EH edges out of it.
2014-02-07 Jakub Jelinek <jakub@redhat.com>
* cilk-common.c (cilk_init_builtins): Clear TREE_NOTHROW
flag on __cilkrts_rethrow builtin.
--- gcc/cilk-common.c.jj 2014-02-06 23:06:47.000000000 +0100
+++ gcc/cilk-common.c 2014-02-07 11:11:15.253128977 +0100
@@ -285,6 +285,7 @@ cilk_init_builtins (void)
/* __cilkrts_rethrow (struct stack_frame *); */
cilk_rethrow_fndecl = install_builtin ("__cilkrts_rethrow", fptr_fun,
BUILT_IN_CILK_RETHROW, false);
+ TREE_NOTHROW (cilk_rethrow_fndecl) = 0;
/* __cilkrts_save_fp_ctrl_state (__cilkrts_stack_frame *); */
cilk_save_fp_fndecl = install_builtin ("__cilkrts_save_fp_ctrl_state",
More information about the Gcc-bugs
mailing list