summaryrefslogtreecommitdiff
path: root/gcc/except.c
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-22 08:42:57 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-22 08:42:57 +0000
commit8a1586baa04be64c3347723371fbd6b8ce78a049 (patch)
treece35507892fd6bad041ced4cbba6f9dba4b58d20 /gcc/except.c
parent720f6ebb975a3575cc0cc90587e40e26cdf21279 (diff)
downloadgcc-8a1586baa04be64c3347723371fbd6b8ce78a049.tar.gz
PR target/32325
* except.c (finish_eh_generation): Call commit_edge_insertions if there are insns queued on the entry edge. * config/alpha/alpha.c (alpha_gp_save_rtx): Insert the insns on the entry edge. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128665 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/except.c')
-rw-r--r--gcc/except.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/except.c b/gcc/except.c
index f3204eb863a..fe98299450d 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -2107,7 +2107,9 @@ finish_eh_generation (void)
/* We've totally changed the CFG. Start over. */
find_exception_handler_labels ();
break_superblocks ();
- if (USING_SJLJ_EXCEPTIONS)
+ if (USING_SJLJ_EXCEPTIONS
+ /* Kludge for Alpha/Tru64 (see alpha_gp_save_rtx). */
+ || single_succ_edge (ENTRY_BLOCK_PTR)->insns.r)
commit_edge_insertions ();
FOR_EACH_BB (bb)
{