Blob Blame History Raw
diff -rupN gcc-8.2.0/gcc/dwarf2out.c gcc-8.2.0-new/gcc/dwarf2out.c
--- gcc-8.2.0/gcc/dwarf2out.c	2018-07-16 13:57:10.000000000 +0200
+++ gcc-8.2.0-new/gcc/dwarf2out.c	2018-08-08 00:13:59.987268567 +0200
@@ -14264,7 +14264,7 @@ based_loc_descr (rtx reg, poly_int64 off
       if (elim != reg)
 	{
 	  elim = strip_offset_and_add (elim, &offset);
-	  gcc_assert ((SUPPORTS_STACK_ALIGNMENT
+	  gcc_assert (((SUPPORTS_STACK_ALIGNMENT || !crtl->stack_realign_tried)
 		       && (elim == hard_frame_pointer_rtx
 			   || elim == stack_pointer_rtx))
 	              || elim == (frame_pointer_needed
@@ -20451,7 +20451,7 @@ compute_frame_pointer_to_fb_displacement
      this, assume that while we cannot provide a proper value for
      frame_pointer_fb_offset, we won't need one either.  */
   frame_pointer_fb_offset_valid
-    = ((SUPPORTS_STACK_ALIGNMENT
+    = (((SUPPORTS_STACK_ALIGNMENT || !crtl->stack_realign_tried)
 	&& (elim == hard_frame_pointer_rtx
 	    || elim == stack_pointer_rtx))
        || elim == (frame_pointer_needed