From: Maciej W. Rozycki Date: Sat, 5 Dec 2020 18:26:25 +0000 (+0000) Subject: loop-doloop: Add missing call to `onlyjump_p' X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4b70b2e07a589c4d50e14fa597eb164375a10a20;p=gcc.git loop-doloop: Add missing call to `onlyjump_p' Keep any jump that has side effects as those must not be removed. gcc/ * loop-doloop.c (add_test): Only remove the jump if `onlyjump_p'. --- diff --git a/gcc/loop-doloop.c b/gcc/loop-doloop.c index 02282d45bd5..661e50298cc 100644 --- a/gcc/loop-doloop.c +++ b/gcc/loop-doloop.c @@ -378,7 +378,7 @@ add_test (rtx cond, edge *e, basic_block dest) bb = split_edge_and_insert (*e, seq); *e = single_succ_edge (bb); - if (any_uncondjump_p (jump)) + if (any_uncondjump_p (jump) && onlyjump_p (jump)) { /* The condition is always true. */ delete_insn (jump);