Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-31 Thread Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL271267: [libcxxabi] Introduce a -fno-exceptions libc++abi libary variant (authored by asiri). Changed prior to commit: http://reviews.llvm.org/D20677?vs=59009=59044#toc Repository: rL LLVM

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-31 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In http://reviews.llvm.org/D20677#443997, @rmaprath wrote: > Thanks Eric. > > I think I noted a few other `assert(true)` statements elsewhere (with similar > application), will update those separately. > > Btw, do you use some systematic way to detect ABI breakages? I've

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-31 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. Thanks Eric. I think I noted a few other `assert(true)` statements elsewhere (with similar application), will update those separately. Btw, do you use some systematic way to detect ABI breakages? I've only bumped into http://lvc.github.io/abi-compliance-checker/ but

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Eric Fiselier via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Just for reference here is a list of symbols which have been removed: https://gist.github.com/EricWF/bf00dbc5fccc78b779f8d260727a0710 LGTM. Your free to submit it after addressing the inline

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. Nevermind. I figured out why it wasn't working. Phab didn't know the libc++ patch was in a different repo and so it wouldn't apply the patch. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. For some reason I'm having trouble applying your patch. Could you please upload it with more context? (ie git diff -U999 or similar) http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Asiri Rathnayake via cfe-commits
rmaprath marked 6 inline comments as done. rmaprath added a comment. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Asiri Rathnayake via cfe-commits
rmaprath updated this revision to Diff 59009. rmaprath added a comment. Addressed review comments from @EricWF: - Addressed the nits - Disabled `backtrace_test.pass.cpp` for the moment, need to check if using `_Unwind_backtrace` with no unwinding tables (-fno-exceptions) makes sense - Enabled a

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Eric Fiselier via cfe-commits
EricWF added a comment. Looking good. I would like to see some tests for the methods we have specificly defined to have behavior in -fno-exceptions mode. Comment at: src/cxa_noexception.cpp:27 @@ +26,3 @@ + +_LIBCXXABI_FUNC_VIS void +__cxa_increment_exception_refcount(void

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-30 Thread Asiri Rathnayake via cfe-commits
rmaprath updated this revision to Diff 59000. rmaprath added a comment. Addressing review comments from @EricWF: - Rather than explicitly decoupling the no-exceptions `libc++` library from the `__cxa_*` routines (http://reviews.llvm.org/D20784), provide a placeholder implementation of those

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-29 Thread Asiri Rathnayake via cfe-commits
rmaprath marked an inline comment as done. rmaprath added a comment. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-29 Thread Asiri Rathnayake via cfe-commits
rmaprath updated this revision to Diff 58929. rmaprath added a comment. Fixed a few typos. http://reviews.llvm.org/D20677 Files: CMakeLists.txt src/CMakeLists.txt src/cxa_aux_runtime.cpp src/cxa_handlers.cpp src/cxa_new_delete.cpp test/CMakeLists.txt test/backtrace_test.pass.cpp

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-29 Thread Asiri Rathnayake via cfe-commits
rmaprath added inline comments. Comment at: CMakeLists.txt:111 @@ -110,2 +110,3 @@ # Define options. +option(LIBCXXABI_ENABLE_EXCEPTIONS "Use exceptions." OFF) option(LIBCXXABI_ENABLE_ASSERTIONS "Enable assertions independent of build mode." ON) My bad, this

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-29 Thread Asiri Rathnayake via cfe-commits
rmaprath updated this revision to Diff 58927. rmaprath added a comment. OK, managed to solve this problem by removing `cxa_exception.cpp` and `cxa_personality.cpp` from the no-exceptions libcxxabi build. In order to do this, a small patch was needed for `exception.cpp` of libcxx:

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. > I have a small concern about how difficult this would make things for us > though - our toolchain setup uses `-ffunction-sections` and `-fdata-sections` > along with linker's unused-section elimination to get rid of most of the > stuff not necessary for the final

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. In http://reviews.llvm.org/D20677#442713, @EricWF wrote: > In http://reviews.llvm.org/D20677#442687, @rmaprath wrote: > > > In http://reviews.llvm.org/D20677#442559, @EricWF wrote: > > > > > I have an issue with this change since it allows a libc++abi built > > >

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Eric Fiselier via cfe-commits
EricWF added a comment. In http://reviews.llvm.org/D20677#442687, @rmaprath wrote: > In http://reviews.llvm.org/D20677#442559, @EricWF wrote: > > > I have an issue with this change since it allows a libc++abi built without > > exceptions to be used in a program compiled with them. I assert that

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. In http://reviews.llvm.org/D20677#442559, @EricWF wrote: > I have an issue with this change since it allows a libc++abi built without > exceptions to be used in a program compiled with them. I assert that this > should not be supported in any way. > > My personal

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Eric Fiselier via cfe-commits
EricWF added a comment. I have an issue with this change since it allows a libc++abi built without exceptions to be used in a program compiled with them. I assert that this should not be supported in any way. My personal preference would be to remove as much of the exception API from the

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-27 Thread Marshall Clow via cfe-commits
mclow.lists added a comment. If you're really going to do this, you should probably empty out most of the routines in src/cxa_exception.cpp as well. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. In http://reviews.llvm.org/D20677#441598, @EricWF wrote: > I want to take a look at this as well. I'll review it tomorrow. Thanks! will wait until we have ironed out all the details, no hurry. / Asiri http://reviews.llvm.org/D20677

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. In http://reviews.llvm.org/D20677#441407, @bcraig wrote: > https://mentorembedded.github.io/cxx-abi/abi-eh.html mentions the functions, > but it doesn't really say what they are for. The C++ standard mentions when > an exception of std::bad_cast and std::bad_typeid

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Eric Fiselier via cfe-commits
EricWF added a reviewer: mclow.lists. EricWF added a subscriber: mclow.lists. EricWF added a comment. Adding @mclow.lists to this as well. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Eric Fiselier via cfe-commits
EricWF added a comment. I want to take a look at this as well. I'll review it tomorrow. http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Ben Craig via cfe-commits
bcraig added a comment. LGTM. Probably want a "LGTM" from at least one other person though. In http://reviews.llvm.org/D20677#441085, @rmaprath wrote: > In http://reviews.llvm.org/D20677#441061, @jroelofs wrote: > > > This is the canonical reference for the Itanium ABI: > >

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath added a comment. In http://reviews.llvm.org/D20677#441061, @jroelofs wrote: > This is the canonical reference for the Itanium ABI: > https://mentorembedded.github.io/cxx-abi/abi.html I was indeed looking at this, but couldn't find those exact function signatures (or something that

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Jonathan Roelofs via cfe-commits
jroelofs added a comment. This is the canonical reference for the Itanium ABI: https://mentorembedded.github.io/cxx-abi/abi.html http://reviews.llvm.org/D20677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath marked an inline comment as done. Comment at: src/cxa_aux_runtime.cpp:19-25 @@ -18,5 +18,9 @@ extern "C" { _LIBCXXABI_FUNC_VIS LIBCXXABI_NORETURN void __cxa_bad_cast(void) { +#ifndef _LIBCXXABI_NO_EXCEPTIONS throw std::bad_cast(); +#else + std::terminate(); +#endif

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Ben Craig via cfe-commits
bcraig added inline comments. Comment at: src/cxa_aux_runtime.cpp:19-24 @@ -18,4 +18,8 @@ extern "C" { _LIBCXXABI_FUNC_VIS LIBCXXABI_NORETURN void __cxa_bad_cast(void) { +#ifndef _LIBCXXABI_NO_EXCEPTIONS throw std::bad_cast(); +#else + std::terminate(); +#endif }

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath marked 2 inline comments as done. Comment at: src/cxa_aux_runtime.cpp:19-20 @@ -18,3 +18,4 @@ extern "C" { _LIBCXXABI_FUNC_VIS LIBCXXABI_NORETURN void __cxa_bad_cast(void) { +#ifndef _LIBCXXABI_NO_EXCEPTIONS throw std::bad_cast(); I'm not very

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath updated this revision to Diff 58620. http://reviews.llvm.org/D20677 Files: CMakeLists.txt src/cxa_aux_runtime.cpp src/cxa_handlers.cpp src/cxa_new_delete.cpp src/cxa_personality.cpp test/CMakeLists.txt test/backtrace_test.pass.cpp test/catch_array_01.pass.cpp

Re: [PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Ben Craig via cfe-commits
bcraig added inline comments. Comment at: CMakeLists.txt:359 @@ -350,2 +358,3 @@ else() - add_subdirectory(test) + # libc++abi tests are mostly exceptions related. The only reason we want to + # build libc++abi without exceptions is to support the -fno-exceptions libc++

[PATCH] D20677: Make it possible to build a -fno-exceptions libc++abi variant.

2016-05-26 Thread Asiri Rathnayake via cfe-commits
rmaprath created this revision. rmaprath added reviewers: bcraig, jroelofs, EricWF. rmaprath added a subscriber: cfe-commits. Support for building a -fno-exceptions libc++ variant was reinstated recently. However, some of the standard library functions like `std::terminate()` are currently