From ee265800a59c05c2a8b90789a3b8b0da41048cb5 Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Mon, 22 Nov 1999 14:53:20 +0000 Subject: emit-rtl.c (gen_sequence): Only return the pattern of an insn if its code is INSN and it has no notes. Fri Nov 12 14:08:40 1999 Andrew Haley * emit-rtl.c (gen_sequence): Only return the pattern of an insn if its code is INSN and it has no notes. From-SVN: r30612 --- gcc/emit-rtl.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'gcc/emit-rtl.c') diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 16fe0bc..3b485d0 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -3393,16 +3393,16 @@ gen_sequence () for (tem = first_insn; tem; tem = NEXT_INSN (tem)) len++; - /* If only one insn, return its pattern rather than a SEQUENCE. + /* If only one insn, return it rather than a SEQUENCE. (Now that we cache SEQUENCE expressions, it isn't worth special-casing - the case of an empty list.) */ + the case of an empty list.) + We only return the pattern of an insn if its code is INSN and it + has no notes. This ensures that no information gets lost. */ if (len == 1 && ! RTX_FRAME_RELATED_P (first_insn) - && (GET_CODE (first_insn) == INSN - || GET_CODE (first_insn) == JUMP_INSN - /* Don't discard the call usage field. */ - || (GET_CODE (first_insn) == CALL_INSN - && CALL_INSN_FUNCTION_USAGE (first_insn) == NULL_RTX))) + && GET_CODE (first_insn) == INSN + /* Don't throw away any reg notes. */ + && REG_NOTES (first_insn) == 0) { if (!ggc_p) { -- cgit v1.1