<html><body>
<p><font size="2" face="sans-serif">Ok, I'll put a patch together to fix this later today. I'll probably do what Reid was suggesting and use what is already in there for Windows.</font><br>
<br>
<font size="2" face="sans-serif">Thanks,</font><br>
<font size="2" face="sans-serif">Samuel</font><br>
<br>
<tt><font size="2">Bill Schmidt <wschmidt@linux.vnet.ibm.com> wrote on 11/04/2014 12:11:08 PM:<br>
<br>
> From: Bill Schmidt <wschmidt@linux.vnet.ibm.com></font></tt><br>
<tt><font size="2">> To: Samuel F Antao/Watson/IBM@IBMUS</font></tt><br>
<tt><font size="2">> Cc: azanella@linux.vnet.ibm.com, beanz@apple.com, Hal Finkel <br>
> <hfinkel@anl.gov>, LLVM Dev <llvmdev@cs.uiuc.edu></font></tt><br>
<tt><font size="2">> Date: 11/04/2014 12:11 PM</font></tt><br>
<tt><font size="2">> Subject: Re: Issue with std::call_once in PPC64 platform</font></tt><br>
<tt><font size="2">> <br>
> On Tue, 2014-11-04 at 11:59 -0500, Samuel F Antao wrote:<br>
> > Hi Bill,<br>
> > <br>
> > You can find the same issue in the buildbot:<br>
> > <br>
> > <a href="http://lab.llvm.org:8011/builders/clang-ppc64-elf-linux2/builds/">http://lab.llvm.org:8011/builders/clang-ppc64-elf-linux2/builds/</a><br>
> 16444/steps/compile.llvm.stage2/logs/stdio<br>
> > <br>
> > It is failing for me both in BE (gcc 4.8.2) and LE(4.9.1). I am<br>
> > compiling with clang 3.5, but those are the gcc toolchains I am using.<br>
> > <br>
> > What do you think is the best way to fix this?<br>
> <br>
> I don't know what the best fix is, but clearly a fix or revert is needed<br>
> since the patch is breaking some platforms.<br>
> <br>
> Thanks,<br>
> Bill<br>
> <br>
> > <br>
> > Thanks!<br>
> > Samuel <br>
> > <br>
> > Bill Schmidt <wschmidt@linux.vnet.ibm.com> wrote on 11/04/2014<br>
> > 11:45:06 AM:<br>
> > <br>
> > > From: Bill Schmidt <wschmidt@linux.vnet.ibm.com><br>
> > > To: Samuel F Antao/Watson/IBM@IBMUS<br>
> > > Cc: LLVM Dev <llvmdev@cs.uiuc.edu>, beanz@apple.com, Hal Finkel <br>
> > > <hfinkel@anl.gov>, azanella@linux.vnet.ibm.com<br>
> > > Date: 11/04/2014 11:45 AM<br>
> > > Subject: Re: Issue with std::call_once in PPC64 platform<br>
> > > <br>
> > > Hi Samuel,<br>
> > > <br>
> > > I haven't encountered this problem.  What gcc/libstdc++ are you<br>
> > using?<br>
> > > BE or LE?<br>
> > > <br>
> > > Copying Adhemerval in case he has heard of any related issues.<br>
> > > <br>
> > > Thanks,<br>
> > > Bill<br>
> > > <br>
> > > On Mon, 2014-11-03 at 20:19 -0500, Samuel F Antao wrote:<br>
> > > > Hi all,<br>
> > > > <br>
> > > > I observe that r220932 (Removing the static initializer in<br>
> > > > ManagedStatic.cpp by using llvm_call_once to initialize the<br>
> > > > ManagedStatic mutex.) is causing tablegen to segfault in PPC<br>
> > platforms<br>
> > > > during static initialization. The crash happens while calling<br>
> > > >  std::call_once introduced by this patch in the wrapper used in<br>
> > > > getManagedStaticMutex. <br>
> > > > <br>
> > > > I understand this call is buggy for some platforms (or probably<br>
> > some<br>
> > > > oldish libstdc++ versions). Is this a known issue? Should we guard<br>
> > > > LLVM_DEFINE_ONCE_FLAG definition with platform specific macros to<br>
> > > > avoid the crash, at least for the moment?<br>
> > > > <br>
> > > > Thanks!<br>
> > > > Samuel<br>
> > > > <br>
> > > > <br>
> > > <br>
> > > <br>
> > <br>
> > <br>
> <br>
> <br>
</font></tt></body></html>