summaryrefslogtreecommitdiff
path: root/gcc/config/m68hc11
diff options
context:
space:
mode:
authorrask <rask@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-19 21:41:43 +0000
committerrask <rask@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-19 21:41:43 +0000
commit0eb1d2b3f119381885f61fd97f9d21be53e9a35a (patch)
tree45faeaa95aeebd2fed6ee6239bdd7ce02013877a /gcc/config/m68hc11
parent2e8432f2f763cde69220a310dbc5be728d3688c6 (diff)
downloadgcc-0eb1d2b3f119381885f61fd97f9d21be53e9a35a.tar.gz
2007-06-19 Rask Ingemann Lambertsen <rask@sygehus.dk>
* config/m68hc11/m68hc11.c: Include dataflow header file. (m68hc11_reorg): Port to dataflow. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125861 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68hc11')
-rw-r--r--gcc/config/m68hc11/m68hc11.c29
1 files changed, 5 insertions, 24 deletions
diff --git a/gcc/config/m68hc11/m68hc11.c b/gcc/config/m68hc11/m68hc11.c
index ca7575858a2..431af782623 100644
--- a/gcc/config/m68hc11/m68hc11.c
+++ b/gcc/config/m68hc11/m68hc11.c
@@ -59,6 +59,7 @@ Note:
#include "reload.h"
#include "target.h"
#include "target-def.h"
+#include "df.h"
static void emit_move_after_reload (rtx, rtx, rtx);
static rtx simplify_logical (enum machine_mode, int, rtx, rtx *);
@@ -5004,7 +5005,7 @@ static void
m68hc11_reorg (void)
{
int split_done = 0;
- rtx insn, first;
+ rtx first;
z_replacement_completed = 0;
z_reg = gen_rtx_REG (HImode, HARD_Z_REGNUM);
@@ -5036,29 +5037,9 @@ m68hc11_reorg (void)
description to use the best assembly directives. */
if (optimize)
{
- /* Before recomputing the REG_DEAD notes, remove all of them.
- This is necessary because the reload_cse_regs() pass can
- have replaced some (MEM) with a register. In that case,
- the REG_DEAD that could exist for that register may become
- wrong. */
- for (insn = first; insn; insn = NEXT_INSN (insn))
- {
- if (INSN_P (insn))
- {
- rtx *pnote;
-
- pnote = &REG_NOTES (insn);
- while (*pnote != 0)
- {
- if (REG_NOTE_KIND (*pnote) == REG_DEAD)
- *pnote = XEXP (*pnote, 1);
- else
- pnote = &XEXP (*pnote, 1);
- }
- }
- }
-
- life_analysis (PROP_REG_INFO | PROP_DEATH_NOTES);
+ df_note_add_problem ();
+ df_analyze ();
+ df_remove_problem (df_note);
}
z_replacement_completed = 2;