except.c (sjlj_mark_call_sites): Change address inside sequence.
authorAndrew Haley <aph@cambridge.redhat.com>
Wed, 26 Sep 2001 10:38:18 +0000 (10:38 +0000)
committerAndrew Haley <aph@gcc.gnu.org>
Wed, 26 Sep 2001 10:38:18 +0000 (10:38 +0000)
2001-09-25  Andrew Haley  <aph@cambridge.redhat.com>

* except.c (sjlj_mark_call_sites): Change address inside sequence.

From-SVN: r45822

gcc/ChangeLog
gcc/except.c

index 3cc5016e9fde2f70a3ed0a18c2ba86ada392da92..2f79396a90f8f3f388b18ada851f388adee5c687 100644 (file)
@@ -1,3 +1,7 @@
+2001-09-25  Andrew Haley  <aph@cambridge.redhat.com>
+
+       * except.c (sjlj_mark_call_sites): Change address inside sequence.
+
 2001-09-24  Andrew Haley  <aph@cambridge.redhat.com>
 
        * config/sh/linux.h (LINK_SPEC): Set dynamic-linker to agree with
index 4448610757a15b26a7f19995572a86e44466b6bf..6b345feb8d0775255b30a9372299f3f968255b76 100644 (file)
@@ -2055,9 +2055,6 @@ sjlj_mark_call_sites (lp_info)
   int last_call_site = -2;
   rtx insn, mem;
 
-  mem = adjust_address (cfun->eh->sjlj_fc, TYPE_MODE (integer_type_node),
-                       sjlj_fc_call_site_ofs);
-
   for (insn = get_insns (); insn ; insn = NEXT_INSN (insn))
     {
       struct eh_region *region;
@@ -2103,6 +2100,8 @@ sjlj_mark_call_sites (lp_info)
          before = find_first_parameter_load (insn, NULL_RTX);
 
       start_sequence ();
+      mem = adjust_address (cfun->eh->sjlj_fc, TYPE_MODE (integer_type_node),
+                           sjlj_fc_call_site_ofs);
       emit_move_insn (mem, GEN_INT (this_call_site));
       p = get_insns ();
       end_sequence ();