OSDN Git Service

PR target/13506
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 Aug 2004 16:42:39 +0000 (16:42 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 Aug 2004 16:42:39 +0000 (16:42 +0000)
* toplev.c (crash_signal): If we crashed while emitting
a user asm, then die more gracefully.

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

gcc/ChangeLog
gcc/toplev.c

index e47b407..26ba0c6 100644 (file)
@@ -1,3 +1,9 @@
+2004-08026  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/13506
+       * toplev.c (crash_signal): If we crashed while emitting
+       a user asm, then die more gracefully.
+
 2004-08-26  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
 
        PR target/17119.
index 53f4418..d1b10ac 100644 (file)
@@ -598,6 +598,15 @@ static void
 crash_signal (int signo)
 {
   signal (signo, SIG_DFL);
+
+  /* If we crashed while processing an ASM statement, then be a little more
+     graceful.  It's most likely the user's fault.  */
+  if (this_is_asm_operands)
+    {
+      output_operand_lossage ("unrecoverable error");
+      exit (FATAL_EXIT_CODE);
+    }
+
   internal_error ("%s", strsignal (signo));
 }