OSDN Git Service

* gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
authorsje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Jul 2002 15:28:22 +0000 (15:28 +0000)
committersje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Jul 2002 15:28:22 +0000 (15:28 +0000)
from Pmode to ptr_mode.
(get_exception_pointer): Ditto.
(connect_post_landing_pads): Ditto.
(dw2_build_landing_pads): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@55341 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/except.c

index a4e818e..e825ded 100644 (file)
@@ -1,3 +1,10 @@
+2002-07-09  Steve Ellcey  <sje@cup.hp.com>
+       * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
+       from Pmode to ptr_mode.
+       (get_exception_pointer): Ditto.
+       (connect_post_landing_pads): Ditto.
+       (dw2_build_landing_pads): Ditto.
+
 2002-07-08  Steve Ellcey  <sje@cup.hp.com>
        * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
        * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
index bf4d8fb..a2818c3 100644 (file)
@@ -569,7 +569,7 @@ expand_eh_region_end_cleanup (handler)
 
   /* In case this cleanup involves an inline destructor with a try block in
      it, we need to save the EH return data registers around it.  */
-  data_save[0] = gen_reg_rtx (Pmode);
+  data_save[0] = gen_reg_rtx (ptr_mode);
   emit_move_insn (data_save[0], get_exception_pointer (cfun));
   data_save[1] = gen_reg_rtx (word_mode);
   emit_move_insn (data_save[1], get_exception_filter (cfun));
@@ -829,7 +829,7 @@ get_exception_pointer (fun)
   rtx exc_ptr = fun->eh->exc_ptr;
   if (fun == cfun && ! exc_ptr)
     {
-      exc_ptr = gen_reg_rtx (Pmode);
+      exc_ptr = gen_reg_rtx (ptr_mode);
       fun->eh->exc_ptr = exc_ptr;
     }
   return exc_ptr;
@@ -1791,7 +1791,7 @@ connect_post_landing_pads ()
        emit_jump (outer->post_landing_pad);
       else
        emit_library_call (unwind_resume_libfunc, LCT_THROW,
-                          VOIDmode, 1, cfun->eh->exc_ptr, Pmode);
+                          VOIDmode, 1, cfun->eh->exc_ptr, ptr_mode);
 
       seq = get_insns ();
       end_sequence ();
@@ -1864,7 +1864,7 @@ dw2_build_landing_pads ()
        }
 
       emit_move_insn (cfun->eh->exc_ptr,
-                     gen_rtx_REG (Pmode, EH_RETURN_DATA_REGNO (0)));
+                     gen_rtx_REG (ptr_mode, EH_RETURN_DATA_REGNO (0)));
       emit_move_insn (cfun->eh->filter,
                      gen_rtx_REG (word_mode, EH_RETURN_DATA_REGNO (1)));