diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9120e1cfb0690d8c935651686699cd5fa3170b9a..a25025248320d841fdb42462bdcff8a15f5d7a15 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2009-12-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+	PR ada/41912
+	* pa/linux-unwind.h (pa32_fallback_frame_state): Set fs->signal_frame
+	for signal frames.
+	* pa/hpux-unwind.h (pa32_fallback_frame_state): Likewise.
+
 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
 	* configure: Regenerate.
diff --git a/gcc/config/pa/hpux-unwind.h b/gcc/config/pa/hpux-unwind.h
index cfce90be6ba697d165185c840f1602a786c8b175..92061ec3677e8e4d911752d4ee7a5fc2d14d4eb0 100644
--- a/gcc/config/pa/hpux-unwind.h
+++ b/gcc/config/pa/hpux-unwind.h
@@ -351,6 +351,7 @@ pa_fallback_frame_state (struct _Unwind_Context *context,
 
       fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
       UPDATE_FS_FOR_PC (fs, DWARF_ALT_FRAME_RETURN_COLUMN);
+      fs->signal_frame = 1;
 
       return _URC_NO_REASON;
     }
diff --git a/gcc/config/pa/linux-unwind.h b/gcc/config/pa/linux-unwind.h
index 733f772c1c77c559ddb848b9d08771d82ebc6c34..a0560e97445a41f3e30a43eb4ba126c55489dda0 100644
--- a/gcc/config/pa/linux-unwind.h
+++ b/gcc/config/pa/linux-unwind.h
@@ -135,6 +135,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context,
   fs->regs.reg[DWARF_ALT_FRAME_RETURN_COLUMN].loc.offset
     = (long) &sc->sc_iaoq[0] - new_cfa;
   fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
+  fs->signal_frame = 1;
   return _URC_NO_REASON;
 }
 #endif /* inhibit_libc */