<div dir="ltr">Although this has been discussed in the past, I think that given a few conversations, it seems that it unfortunately needs to be brought up again.<div><br></div><div>There seems to be some disagreement over the ideal location of the unwinder (libunwind). Currently, libunwind resides in a subdirectory of libc++abi. There seems to be some desire from multiple parties that it be moved into compiler-rt or a separate repository.</div><div><br></div><div>Currently, when using compiler-rt as the runtime library (on Linux) we use libgcc_s and libgcc_eh as the builtins serve as the home for __gcc_personality_v0. This error handling personality requires unwinding support, which these libraries provide. This dependency can be fulfilled with libunwind.</div><div><br></div><div>The concern that has been raised with adjusting this dependency has been that libunwind is not guaranteed to be built and installed unless libc++abi is present. The suggestion was that if libunwind were part of compiler-rt or a separate repository, it would be easier to ensure that the required library would be built and installed.<br><div><div><br></div><div>Personally, I am of the opinion that a separate repository for it does make some sense as painful as it sounds. There is a valid point that the unwinder supports the compiler in some sense (for exception handling). It seems that its not particularly as intrinsically tied to the compiler as the builtins are. There is a proper specification that it implements and interface it exposes, so it can be replaced with an alternative implementation. At the same time, the unwinder is not really tied to libc++abi either, though it too has a dependency on it. Again, the use here can be replaced with an alternate implementation (and AIUI, the build system already permits this).<br></div><div><br></div><div>So, I am bringing up this question once more: what can we do about this concern? Is moving it to a separate repository acceptable? Or perhaps moving it to compiler-rt is palatable to more of the involved developers (as much as I may prefer an alternate solution).</div><div><br></div>-- <br><div class="gmail_signature">Saleem Abdulrasool<br>compnerd (at) compnerd (dot) org</div>
</div></div></div>