except.c (expand_eh_return): Force pointers to proper mode if POINTERS_EXTEND_UNSIGNED.
authorDonn Terry <donn@interix.com>
Thu, 15 Apr 1999 19:52:18 +0000 (19:52 +0000)
committerJeff Law <law@gcc.gnu.org>
Thu, 15 Apr 1999 19:52:18 +0000 (13:52 -0600)
        * except.c (expand_eh_return): Force pointers to proper mode if
        POINTERS_EXTEND_UNSIGNED.

From-SVN: r26477

gcc/ChangeLog
gcc/except.c

index 183159ed1a8652b7f4b82590b25dcd16e9ac7ab7..345454492b5703e5b5df35c56eb04ea1e58be7f4 100644 (file)
@@ -1,3 +1,8 @@
+Thu Apr 15 20:46:57 1999  Donn Terry (donn@interix.com)
+
+       * except.c (expand_eh_return): Force pointers to proper mode if
+       POINTERS_EXTEND_UNSIGNED.
+
 Thu Apr 15 23:13:35 1999  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
 
        * config/c4x/c4x.h:  Tweaked comment formatting.
index 3c296c9f6135f3e981430d4b1012b304ffeda2e6..21d5b8ab9fd7dec9b369c1ab4c2e41f2a0becc49 100644 (file)
@@ -2790,6 +2790,12 @@ expand_eh_return ()
     return;
 
   eh_regs (&reg1, &reg2, &reg3, 1);
+#ifdef POINTERS_EXTEND_UNSIGNED
+  eh_return_context = convert_memory_address (Pmode, eh_return_context);
+  eh_return_stack_adjust = 
+      convert_memory_address (Pmode, eh_return_stack_adjust);
+  eh_return_handler = convert_memory_address (Pmode, eh_return_handler);
+#endif
   emit_move_insn (reg1, eh_return_context);
   emit_move_insn (reg2, eh_return_stack_adjust);
   emit_move_insn (reg3, eh_return_handler);