From b49326f1ca9f1e9ec206d431643cf1996008fdcf Mon Sep 17 00:00:00 2001 From: Andreas Krebbel Date: Thu, 14 Feb 2008 08:40:40 +0000 Subject: [PATCH] s390.c (s390_mainpool_start): Emit the pool before the first section switch note. 2008-02-14 Andreas Krebbel * config/s390/s390.c (s390_mainpool_start): Emit the pool before the first section switch note. From-SVN: r132315 --- gcc/ChangeLog | 5 +++++ gcc/config/s390/s390.c | 13 ++++--------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c0c6b6ea4c5..23d2bec85a7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-02-14 Andreas Krebbel + + * config/s390/s390.c (s390_mainpool_start): Emit the pool + before the first section switch note. + 2008-02-14 Ralf Wildenhues * doc/bugreport.texi: Update copyright years. diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index 2d90eef88cf..280358c0c3f 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -5683,7 +5683,6 @@ s390_mainpool_start (void) { struct constant_pool *pool; rtx insn; - bool in_pool_section_p = false; pool = s390_alloc_pool (); @@ -5696,7 +5695,6 @@ s390_mainpool_start (void) { gcc_assert (!pool->pool_insn); pool->pool_insn = insn; - in_pool_section_p = true; } if (!TARGET_CPU_ZARCH && s390_execute_label (insn)) @@ -5722,12 +5720,9 @@ s390_mainpool_start (void) Z cpus where we can emit the literal pool at the end of the function body within the text section. */ if (NOTE_P (insn) - && NOTE_KIND (insn) == NOTE_INSN_SWITCH_TEXT_SECTIONS) - { - if (in_pool_section_p) - pool->emit_pool_after = PREV_INSN (insn); - in_pool_section_p = !in_pool_section_p; - } + && NOTE_KIND (insn) == NOTE_INSN_SWITCH_TEXT_SECTIONS + && !pool->emit_pool_after) + pool->emit_pool_after = PREV_INSN (insn); } gcc_assert (pool->pool_insn || pool->size == 0); @@ -5744,7 +5739,7 @@ s390_mainpool_start (void) /* If the functions ends with the section where the literal pool should be emitted set the marker to its end. */ - if (pool && in_pool_section_p) + if (pool && !pool->emit_pool_after) pool->emit_pool_after = get_last_insn (); return pool; -- 2.30.2