From: Stan Shebs Date: Tue, 25 Sep 2018 15:04:10 +0000 (-0700) Subject: Work around clang crash by skipping apparently-unneeded asm X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ea6782b69a19dfd32bceaa3b83bf81d90763373;p=thirdparty%2Fglibc.git Work around clang crash by skipping apparently-unneeded asm --- diff --git a/sysdeps/powerpc/powerpc64/backtrace.c b/sysdeps/powerpc/powerpc64/backtrace.c index c0c4b48262c..b4385607921 100644 --- a/sysdeps/powerpc/powerpc64/backtrace.c +++ b/sysdeps/powerpc/powerpc64/backtrace.c @@ -70,8 +70,12 @@ __backtrace (void **array, int size) struct layout *current; int count; + /* The following asm causes a clang crash, and does not seem to be + needed anyway; clang always saves link register. */ +#if !defined __clang__ /* Force gcc to spill LR. */ asm volatile ("" : "=l"(current)); +#endif /* Get the address on top-of-stack. */ asm volatile ("ld %0,0(1)" : "=r"(current));