| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
_Unwind_Backtrace is not clearly defined in EHABI and needs more
testing. A bug was created with some initial investigation done
http://llvm.org/PR21444. This test fails with both libunwind and libgcc_s.
llvm-svn: 221348
|
|
|
|
|
|
|
|
| |
Although the current method is valid up till python 3.3 (which is not supported)
this seems to be a clearer way of checking for linux and moves the tests towards
python 3 compatibility.
llvm-svn: 220535
|
|
|
|
| |
llvm-svn: 220509
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Add support for LLVM_USE_SANITIZER to the libc++abi tests. Currently, if libc++abi is configured with LLVM_USE_SANITIZER then none of the tests will pass.
Reviewers: jroelofs, mclow.lists, danalbert
Reviewed By: danalbert
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D5926
llvm-svn: 220464
|
|
|
|
| |
llvm-svn: 217604
|
|
|
|
|
|
|
|
|
| |
libcxx
Also remove the audotedection part so that if you're crazy enough to want a
single-threaded abi library, you'll say so explicitly in the build.
llvm-svn: 217262
|
|
|
|
|
|
|
| |
Some platforms get size_t defined transitively by another include, but
Android does not.
llvm-svn: 216738
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Since the personality functions do the actual unwinding on ARM,
and will also stop unwinding when they encounter a handler, we invoke
_Unwind_VRS_Interpret() directly form _Unwind_Backtrace().
To simplify, the logic for decoding an EHT is moved out of
unwindOneFrame() and into its own function, decode_eht_entry(). Unlike
unwindOneFrame(), which could only handle ARM's compact personality
function entries (section 6.3) decode_eht_entry() can handle the generic
entries (section 6.2).
Reviewers: jroelofs
Reviewed By: jroelofs
Subscribers: piman, aemerson, cfe-commits
Differential Revision: http://reviews.llvm.org/D5112
llvm-svn: 216730
|
|
|
|
|
|
|
| |
Note: The unwinder currently only works on Darwin and on ARM Linux.
Non-ARM Linux support is not yet implemented, and will fail to build.
llvm-svn: 212824
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes running libcxxabi tests on Linux _much_ easier.
Adds a check-libcxxabi target to cmake.
Also defaults to building a dynamic libc++abi. This is so that the
default options still test the libc++abi that is being built. There are
two problems with testing a static libc++abi. In the case of a
standalone build, the tests will link the system's libc++, which might
not have been built against our libc++abi. In the case of an in tree
build, libc++ will prefer a dynamic libc++abi from the system over a
static libc++abi from the output directory.
llvm-svn: 212672
|
|
|
|
|
|
| |
Test case written by Dana Jansens.
llvm-svn: 210129
|
|
|
|
| |
llvm-svn: 209944
|
|
|
|
| |
llvm-svn: 209943
|
|
|
|
|
|
|
| |
determine whether we get a mangling for a return type, rather than trying to
figure it out based on whether the mangled name ended with a '>'.
llvm-svn: 208611
|
|
|
|
|
|
|
| |
This commit implements the ARM zero-cost exception handling
support for libc++abi.
llvm-svn: 208466
|
|
|
|
|
|
|
|
|
| |
To allow the compilation with gcc, we can't use the
__has_feature(cxx_noexcept) to detect the default destructor
exception specification, which is noexcept(true) by default
in C++11. We should use __cplusplus >= 201103L instead.
llvm-svn: 208465
|
|
|
|
|
|
| |
http://reviews.llvm.org/D3386
llvm-svn: 208135
|
|
|
|
|
|
| |
places to increase the chance of messing up any preserved registers.
llvm-svn: 207938
|
|
|
|
| |
llvm-svn: 207907
|
|
|
|
|
|
| |
AArch64)
llvm-svn: 207481
|
|
|
|
| |
llvm-svn: 201533
|
|
|
|
|
|
| |
pointers. Specifically, libc++abi would crash when you tried it.
llvm-svn: 200904
|
|
|
|
| |
llvm-svn: 200864
|
|
|
|
| |
llvm-svn: 198643
|
|
|
|
|
|
| |
parameter packs, which exposed a logic bug causing an empty vector<string> to be accessed with back(). In addition to fixing the bug, I've inserted numerous preemptive checks for similar bugs in the hopes that if another bug is uncovered, the bug results in an invalid mangled string instead of a demangler crash. Test suite updated with string that was causing the crash.
llvm-svn: 197063
|
|
|
|
| |
llvm-svn: 196540
|
|
|
|
|
|
| |
const'. Thanks to Nico for the catch
llvm-svn: 196355
|
|
|
|
|
|
| |
virtual inheritance hierarchy. Change a few private inheritances to protected. This change will not impact what the test was testing. This fixes http://llvm.org/bugs/show_bug.cgi?id=16753.
llvm-svn: 187429
|
|
|
|
|
|
| |
case that led me to yet another closely related test case that the current design could not handle. I've now changed the way forward references are handled completely. It wasn't that much code to change. The demangler, when confronted with a forward reference to a template parameter, now parses things twice. During the second parse, all forward references are remembered from the first parse. Test suite updated with new case.
llvm-svn: 184672
|
|
|
|
|
|
| |
I believe this fix is a better fix than what I committed in r184656 yesterday. I've basically moved the checking for '`' from the start of the demangling process to the end of it. In the process I discovered that one of the test cases no longer demangled to the expected string. After further investigation I believe this case to not be a valid mangled string, and so I moved the test case to the 'invalid cases'. The reason I believe it is invalid is that it should use T_ instead of T0_ to index the template parameter.
llvm-svn: 184668
|
|
|
|
| |
llvm-svn: 184656
|
|
|
|
|
|
| |
random strings at the demangler. I succeeded in crashing it twice more and those crashers have been fixed and the test suite updated with the crash cases.
llvm-svn: 184562
|
|
|
|
| |
llvm-svn: 184477
|
|
|
|
|
|
| |
names.
llvm-svn: 184394
|
|
|
|
| |
llvm-svn: 184301
|
|
|
|
|
|
| |
Demangler tests updated.
llvm-svn: 184097
|
|
|
|
| |
llvm-svn: 179208
|
|
|
|
|
|
| |
__parse_unnamed_type_name wasn't properly handling the list of paramters and was not safe against incorrectly mangled lambdas (running past last).
llvm-svn: 169022
|
|
|
|
| |
llvm-svn: 165397
|
|
|
|
|
|
|
|
|
| |
substitution forward references. That is, sometimes a mangled name refers to
a substitution that hasn't yet been defined. The demangler was derferencing a
null pointer in this case because it wasn't properly guarded against a
forward reference. Test case added to catch this problem.
llvm-svn: 161267
|
|
|
|
|
|
|
|
| |
because it crashed lldb when it tried to demangle the added test.
Not sure how it should identify the lambda so that might need changing from the current 'lambdax':: Howard: Please patch CREDITS.TXT.
llvm-svn: 161125
|
|
|
|
| |
llvm-svn: 160039
|
|
|
|
| |
llvm-svn: 155994
|
|
|
|
| |
llvm-svn: 149635
|
|
|
|
| |
llvm-svn: 149552
|
|
|
|
| |
llvm-svn: 149545
|
|
|
|
| |
llvm-svn: 149542
|
|
|
|
| |
llvm-svn: 149541
|
|
|
|
|
|
| |
Tests are only activated if #if __has_feature(cxx_nullptr).
llvm-svn: 149536
|
|
|
|
|
|
| |
copy of gcc-4.2. But I believe the tests to be correct (and they pass for libc++abi). I've enquired on the C++ standards mailing list for a clarification in case I'm wrong. So far I've gotten one response that agrees with me.
llvm-svn: 149534
|