This patch broke bootstrap on AIX and probably other targets.

#ifdef ATOMIC_FDE_FAST_PATH
#include "unwind-dw2-btree.h"

static struct btree registered_frames;
static bool in_shutdown;
...
#else

in_shutdown only is defined for ATOMIC_FDE_FAST_PATH but used in code / asserts not protected by that macro.

   gcc_assert (in_shutdown || ob);
   return (void *) ob;
}

I am sorry for that, I did not consider that my test machines all use the fast path.

I think the problem can be fixed by the trivial patch below, I will commit that after I have tested builds both with and without fast path.

Best

Thomas


diff --git a/libgcc/unwind-dw2-fde.c b/libgcc/unwind-dw2-fde.c
index d237179f4ea..d6e347c5481 100644
--- a/libgcc/unwind-dw2-fde.c
+++ b/libgcc/unwind-dw2-fde.c
@@ -67,6 +67,8 @@ static void
 init_object (struct object *ob);

 #else
+/* Without fast path frame lookup must always succeed */
+static const bool in_shutdown = false;

 /* The unseen_objects list contains objects that have been registered
    but not yet categorized in any way.  The seen_objects list has had

Reply via email to