<div dir="ltr"><div dir="ltr"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">On Fri, Jul 12, 2019 at 12:29 PM Rich Felker via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Fri, Jul 12, 2019 at 02:54:40PM -0400, Siva Chandra wrote:<br>
> * A large hole in the llvm toolchain will be plugged with this new<br>
> libc.<br>
<br>
I read this as a confirmation of my concerns from my previous post and<br>
tweets, that this looks like you're trying to make "LLVM libc" (or<br>
rather "Google libc") the first-class libc for use with clang/LLVM,<br>
radically altering the boundaries between tooling and platform, and<br>
relegating the existing libc implementations on LLVM's targets to<br>
second-class.<br>
<br>
If this is not the case, can you explain what guarantees we have that<br>
this is not what's going on?<br></blockquote><div><br></div><div>I'm surprised that you would think this given the rest of the llvm project.</div><div><br></div><div>We have:</div><div><br></div><div>* clang, yet all of llvm still builds with gcc, msvc, icc, edg, etc...</div><div>* lldb, yet you can still debug llvm produced binaries with gdb, and even msvc's debugger.</div><div>* lld, yet you can still link with gnu-ld, gold, link.exe, ld64.</div><div>* libc++, yet clang still works with libstdc++, dinkumware, and the msvc stdlib.</div><div>* libc++abi, yet libc++ still works with libsupc++ and other c++ abi libs.</div><div>* libunwind, yet libc++abi works with other unwinders.</div><div>* compiler-rt (builtins), yet you can still use libgcc.</div><div>* compiler-rt (sanitizers), yet gcc uses them.</div><div><br></div><div>It has been well proven that llvm project alternatives do not push out or harm non-llvm compatibility.  We even cooperate with non-llvm projects on changes and new features where it makes sense.</div><div><br></div><div>What makes you think a llvm libc would be any different?</div><div><br></div><div>- Michael Spencer </div><div><br></div></div></div>