Commit ab75d1f1 by Jan Hubicka Committed by Jan Hubicka

function.c (thread_prologue_and_epilogue_insns): Avoid fallthru flag on edge to exit.

	* function.c (thread_prologue_and_epilogue_insns): Avoid
	fallthru flag on edge to exit.

	* i386.md (trunc?fsi splitter): Conditionionize for non-sse.

	* flow.c (delete_noop_moves, propagate_block_delete_insn): Purge
	dead edges.

From-SVN: r45135
parent d0708dc1
Thu Aug 23 17:21:43 CEST 2001 Jan Hubicka <jh@suse.cz>
* function.c (thread_prologue_and_epilogue_insns): Avoid
fallthru flag on edge to exit.
* i386.md (trunc?fsi splitter): Conditionionize for non-sse.
* flow.c (delete_noop_moves, propagate_block_delete_insn): Purge
dead edges.
2001-08-23 Lars Brinkhoff <lars@nocrew.org> 2001-08-23 Lars Brinkhoff <lars@nocrew.org>
* config/mcore/mcore.h (MACHINE_DEPENDENT_SIMPLIFY): Remove. * config/mcore/mcore.h (MACHINE_DEPENDENT_SIMPLIFY): Remove.
......
...@@ -4818,7 +4818,7 @@ ...@@ -4818,7 +4818,7 @@
&& !reload_completed && !reload_in_progress && !reload_completed && !reload_in_progress
&& !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))" && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))"
"#" "#"
"" "&& 1"
[(const_int 0)] [(const_int 0)]
{ {
operands[2] = assign_386_stack_local (HImode, 1); operands[2] = assign_386_stack_local (HImode, 1);
......
...@@ -4663,6 +4663,8 @@ delete_noop_moves (f) ...@@ -4663,6 +4663,8 @@ delete_noop_moves (f)
PUT_CODE (insn, NOTE); PUT_CODE (insn, NOTE);
NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED; NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED;
NOTE_SOURCE_FILE (insn) = 0; NOTE_SOURCE_FILE (insn) = 0;
if (insn == bb->end)
purge_dead_edges (bb);
} }
} }
} }
...@@ -5250,7 +5252,10 @@ propagate_block_delete_insn (bb, insn) ...@@ -5250,7 +5252,10 @@ propagate_block_delete_insn (bb, insn)
} }
if (bb->end == insn) if (bb->end == insn)
bb->end = PREV_INSN (insn); {
bb->end = PREV_INSN (insn);
purge_dead_edges (bb);
}
flow_delete_insn (insn); flow_delete_insn (insn);
} }
......
...@@ -7336,6 +7336,7 @@ thread_prologue_and_epilogue_insns (f) ...@@ -7336,6 +7336,7 @@ thread_prologue_and_epilogue_insns (f)
emit_barrier_after (last->end); emit_barrier_after (last->end);
emit_return_into_block (last, epilogue_line_note); emit_return_into_block (last, epilogue_line_note);
epilogue_end = last->end; epilogue_end = last->end;
last->succ->flags &= ~EDGE_FALLTHRU;
goto epilogue_done; goto epilogue_done;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment