summaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-27 16:17:33 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-27 16:17:33 +0000
commit3a66feab0e55bcd763fe7081f6cd3e77e631f4b5 (patch)
tree15e869ffaddf800e940f7b8713046b12faaaa4c0 /gcc/emit-rtl.c
parentaaff811e09c8d8e3fee154f41c8127ebfe808fab (diff)
downloadgcc-3a66feab0e55bcd763fe7081f6cd3e77e631f4b5.tar.gz
* emit-rtl.c (active_insn_p): Revert last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@57590 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c33
1 files changed, 5 insertions, 28 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 3dd47992513..889064fd0f9 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -3021,34 +3021,11 @@ int
active_insn_p (insn)
rtx insn;
{
- if (GET_CODE (insn) == CALL_INSN || GET_CODE (insn) == JUMP_INSN)
- return true;
- if (GET_CODE (insn) == INSN)
- {
- if (reload_completed)
- {
- rtx pat = PATTERN (insn);
-
- /* After reload, remaining USE insns are noops. */
- if (GET_CODE (pat) == USE)
- return false;
-
- if (GET_CODE (pat) == CLOBBER)
- {
- /* ??? Don't skip past the clobber of the return register.
- If we eliminate it, we risk a variety of life analysis
- problems on broken code. */
- if (GET_CODE (XEXP (pat, 0)) == REG
- && REG_FUNCTION_VALUE_P (XEXP (pat, 0)))
- return true;
-
- /* Otherwise, clobbers don't do anything either. */
- return false;
- }
- }
- return true;
- }
- return false;
+ return (GET_CODE (insn) == CALL_INSN || GET_CODE (insn) == JUMP_INSN
+ || (GET_CODE (insn) == INSN
+ && (! reload_completed
+ || (GET_CODE (PATTERN (insn)) != USE
+ && GET_CODE (PATTERN (insn)) != CLOBBER))));
}
rtx