summaryrefslogtreecommitdiffstats
path: root/contrib/libcxxrt
Commit message (Collapse)AuthorAgeFilesLines
* Add std::uncaught_exceptions() to libcxxrt (C++17, see N4152 and N4259).dim2015-10-051-0/+9
| | | | This has also been submitted upstream.
* MFV c3ccd112: Correct off-by-ones in free_exception of emergency buffercem2015-09-251-2/+2
| | | | | | | | | | | Note, this has been broken since import in r227825. PR: https://github.com/pathscale/libcxxrt/issues/29 Reviewed by: emaste (earlier version), kan (informally) Obtained from: Anton Rang Relnotes: yes Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3733
* Update libcxxrt upgrade instructionsemaste2015-06-181-1/+1
| | | | The typeinfo file no longer exists upstream.
* Import libcxxrt master e64e93fe5bba67a6d52cbe5a97f8770c054bfa65.emaste2015-06-181-64/+438
| | | | | | | | This includes a number of demangler fixes obtained from upstream ELF Tool Chain. PR: 200913 Sponsored by: The FreeBSD Foundation
* Since newer versions of compiler-rt require unwind.h, and we want to usedim2015-02-261-0/+2
| | | | | | | | the copy in libcxxrt for it, fix the arm-specific header to define the _Unwind_Action type. Submitted by: andrew MFC after: 3 days
* Make libcxxrt's parsing of DWARF exception handling tables work ondim2015-02-261-10/+8
| | | | | | | | | | | architectures with strict alignment, by using memcpy() instead of directly reading fields. Reported by: Daisuke Aoyama <aoyama@peach.ne.jp> Reviewed by: imp, bapt Tested by: bapt MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D1967
* Import libcxxrt master 1cb607e89f6135bbc10f3d3b6fba1f983e258dcc.dim2015-01-311-2/+2
| | | | | | | | Interesting fixes: 1cb607e Correct gcc version check for __cxa_begin_catch() declaration with or without throw() MFC after: 3 days
* Revert r256642, not only to reduce diffs against upstream libcxxrt, butdim2015-01-311-9/+1
| | | | | | | | | | | also because it is the wrong approach: comparing typeinfo names deeply causes trouble if two loaded DSOs use independent types of the same name. In addition, this particular change was never merged to FreeBSD 10.x and 9.x, so let's get rid of it before it ends up in an 11.x release. Discussed with: theraven, joerg@netbsd
* Partially revert r273382, to reduce diffs against upstream. This was adim2015-01-301-5/+0
| | | | | | | temporary fix to solve a conflict with an older version of libc++, and it is no longer relevant. MFC after: 3 days
* Import libcxxrt master 00bc29eb6513624824a6d7db2ebc768a4216a604.dim2014-12-3011-136/+192
| | | | | | | | | | Interesting fixes: 76584a0 Reorganize code to use only 32bit atomic ops for 32bit platforms 30d2ae5 Implement __cxa_throw_bad_array_new_length Reviewed by: bapt MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D1390
* Fix build by marking the new functions as weakbapt2014-10-211-0/+10
| | | | This is a temporary fix
* Add support for __cxa_throw_bad_array_new_length in libcxxrtbapt2014-10-213-0/+22
| | | | | | | | | It is required for use with newer g++49 Differential Revision: https://reviews.freebsd.org/D982 Reviewed by: theraven Approved by: theraven MFC after: 3 weeks
* Pull in upstream libcxxrt commit 8006101, which makes its cxxabi.h filedim2014-02-071-0/+1
| | | | | | | compilable just by itself. PR: kern/184019 MFC after: 3 days
* Since C++ typeinfo objects are currently not guaranteed to be merged atdim2013-10-161-1/+9
| | | | | | | | | | | runtime by the dynamic linker, check for their equality in libcxxrt by not only comparing the typeinfo's name pointers, but also comparing the full names, if necessary. (This is similar to what GNU libstdc++ does in its default configuration.) The 'deep' check can be turned off again by defining LIBCXXRT_MERGED_TYPEINFO, and recompiling libcxxrt. Reviewed by: theraven MFC after: 3 days
* Import a new libcxxrt. This fixes some potential crashing in the demangler.theraven2013-09-233-17/+74
| | | | | Approved by: re (gjb) MFC after: 1 week
* Don't use _Unwind_Backtrace() on ARM as it's currently missing from our ↵theraven2013-08-311-0/+2
| | | | libgcc_s. andrew@ has patches to add it, so this can be reverted and sync'd with upstream later.
* Remove __attribute__((__aligned__)) that generates incorrect alignment on ↵theraven2013-08-071-1/+1
| | | | compilers that know about SSE. Code left over from old header that thought that 64 bits was the maximum alignment that anything would ever need...
* Import new libcxxrt / libc++. This brings some bug fixes, including a ↵theraven2013-07-107-121/+138
| | | | potential race condition for static initialisers.
* Merge libcxxrt c812a07cd2f95c1403baf0bbe0366e7618d1d6d3:dim2013-04-272-4/+4
| | | | | | | | | | | | | * Don't call the _fast version of the TLS accessor in terminate() or unexpected(). 1) TLS may not have been set up yet. 2) When we're in one of these functions, Really Bad Stuff has happened and potentially saving a few cycles really isn't important. * Merge in fixes from FreeBSD trunk to make atomics work with recent clang. MFC after: 1 week
* Fix a copy-and-paste error in libcxxrt.theraven2013-02-071-1/+1
|
* Import new fix from libcxxrt. This fixes the case where you attempt to rethrowtheraven2013-01-211-1/+1
| | | | | | | | an exception when you haven't caught one. This is largely a cosmetic fix, as (unless you have a very unusual terminate handler installed) it will print a nice error and then abort, rather than just aborting. MFC after: 7 days
* Fix libcxxrt / libc++ build with the clang in head.theraven2013-01-121-2/+2
| | | | Pointy hat to: theraven
* Merge new version of libcxxrt. This brings in three fixes:theraven2013-01-114-34/+132
| | | | | | | | | | - Don't treat pointers to members as pointers in catch blocks (they're usually fat pointers). - Correctly catch foreign exceptions in catchalls. - Ensure that a happens-before relationship is established when setting terminate handlers in one thread and calling them in another.
* Import new version of libcxxrt. Now works correctly with libobjc2 to implementtheraven2012-03-204-105/+182
| | | | | | the unified exception model for Objective-C++. Approved by: dim (mentor)
* Import new versions of libcxxrt and libc++.theraven2012-03-1414-42/+381
| | | | | | Please tests any C++ code you care about with -stdlib=libc++! Approved by: dim (mentor)
* Update libcxxrt to remove the pthread dependency.theraven2011-11-263-9/+89
| | | | | | Also add the license from upstream to contrib. Approved by: dim (mentor)
* Import libc++ / libcxxrt into base. Not build by default yet (usetheraven2011-11-2519-0/+6830
MK_LIBCPLUSPLUS=yes to enable). This is a work-in-progress. It works for me, but is not guaranteed to work for anyone else and may eat your dog. To build C++ using libc++, add -stdlib=libc++ to your CXX and LD flags. Bug reports welcome, bug fixes even more welcome... Approved by: dim (mentor)
OpenPOWER on IntegriCloud