aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-12-19Do not define CRT_HAS_128BIT for MIPS64release_35Petar Jovanovic
Do not define it for MIPS64 until its backend supports it. See the bug report [1] for more information. [1] http://llvm.org/bugs/show_bug.cgi?id=20098 Differential Revision: http://reviews.llvm.org/D6703 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@224488 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-24Implement __aeabi_idiv0 and __aeabi_uidiv0.WenHan Gu
Current arm implementation needs these functions defined inside libgcc.a. We implement it simply by raising a SIGFPE signal. Change-Id: I748f7a0c9c7518082e1b8e091b0d53c8084289bf
2014-08-24Define CRT_LDBL_128BIT for Android 64-bit.WenHan Gu
Change-Id: I712d1d28c82f2648cd13fbdc70b176a8e3ba469b
2014-08-24Implement __fixtfsi, __fixunstfsiGuanHong Liu
Change-Id: I416cdf03518811e4f259930ba11374990e29ab3b
2014-08-24Implement __floatsitf, __floatunstfsiGuanHong Liu
Change-Id: Ib60bf8c9891b071e50fa0826b6a505988585beab
2014-08-19Merging r215295:Renato Golin
------------------------------------------------------------------------ r215295 | compnerd | 2014-08-09 21:17:37 +0100 (Sat, 09 Aug 2014) | 10 lines builtins: correct __umodsi3, __udivsi3 on ARM When building the builtins for a modern CPU (idiv support), __umodsi3 was completely incorrect as it would behave as __udivmosi3, which takes a tertiary parameter which is a pointer. __udivsi3 was also incorrect, returning the remainder in r1. Although this would not result in any crash or invalid behaviour as r1 is a caller saved register in AAPCS, this is unnecessary. Simply perform the division ignoring the remainder. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_35@216035 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-06Revert renaming. Should rename tags instead.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_35@215015 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-06Renaming to coincide with updated tagging system.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_350@215005 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-22Creating release_35 branchBill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_35@213601 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-22[MSan] Fix strncpy interceptorAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213590 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-21[ASan] Fix __asan_describe_address and add a test for it.Alexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213583 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-21Adjust gen_dynamic_list for PowerPC function descriptorsAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213577 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-21[lsan] Allow using ucontext.h in the test on OSX.Alexander Potapenko
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213523 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-21[lsan] Define MAP_ANONYMOUS as MAP_ANON for OSX in the test.Alexander Potapenko
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213518 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-21[lsan] Use a more standard-conformant sched_yield() instead of pthread_yield().Alexander Potapenko
There's no pthread_yield() on OSX (only sched_yield() and pthread_yield_np()). git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213516 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-20Redo THUMB support.Joerg Sonnenberger
Discussed with and tested by: Saleem Abdulrasool git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213481 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-20Revert r213467, it breaks non-thumb mode.Joerg Sonnenberger
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213479 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-20ARM: fix division in some casesSaleem Abdulrasool
For ARM cores that are ARMv6T2+ but not ARMv7ve or ARMv7-r and not an updated ARMv7-a that has the idiv extension (chips with clz but not idiv), an incorrect jump would be calculated due to the preference to thumb instructions over ARM. Rather than computing the target at runtime, use a jumptable instead. This trades a bit of storage for performance. The overhead is 32-bytes for each of the three routines, but avoid the calculation of the offset. Because clz was introduced in ARMv6T2 and idiv in certain versions of ARMv7, the non-clz, non-idiv case implies a target which does not support Thumb-2, and thus we cannot use Thumb on those targets (as it is unlikely that the assembly will assemble). Take the opportunity to refactor the IT block macros into assembly.h rather than redefining them in the TUs where they are used. Existing tests cover the full change already, so no new tests are added. This effectively reverts SVN r213309. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213467 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-18tsan: fix Go runtime build with clangDmitry Vyukov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213384 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-18tsan: expose atomic operations in Go runtimeDmitry Vyukov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213382 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-18Add FreeBSD support to the Asan symbolization scriptViktor Kutuzov
Differential Revision: http://reviews.llvm.org/D4560 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213370 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-18Add FreeBSD support to the address sanitizer's waitid.cc test caseViktor Kutuzov
Differential Revision: http://reviews.llvm.org/D4422 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213368 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17Revert Thumb-2 conversion of some ARM builtins.Stephen Hines
The udivmodsi4/modsi3/umodsi3 code computes jump targets based on ARM encodings (if CLZ is present and IDIV is not present). Reverts parts of r211032 and r211035. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213309 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17[asan] Remove leftover debug printf.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213264 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17[asan] Fix malloc interception on Android L Preview.Evgeniy Stepanov
Format of __libc_malloc_dispatch has changed in Android L. While we are moving towards a solution that does not depend on bionic internals, here is something to support both K* and L releases. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213263 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17[compiler-rt] [asan] Refactor DescribeAddressIfStack to allow reuse for ↵Kuba Brecka
debugging API Refactoring the DescribeAddressIfStack function in asan_report.cc to be able to reuse it for http://reviews.llvm.org/D4527. Reviewed at http://reviews.llvm.org/D4545. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213215 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16[ASan/Win] Handle situations when the client app has used DbgHelp beforeTimur Iskhodzhanov
Reviewed at http://reviews.llvm.org/D4533 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213151 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16[ASan] Adjust 'sed' invocation to work on OS XTimur Iskhodzhanov
This is a follow-up to r213053 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213144 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16[ASan] Factor out SymbolizationLoop.process_line() function to let PythonAlexander Potapenko
scripts that import asan_symbolize to symbolize their reports line by line. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213136 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16Add FreeBSD support to the address sanitizer's ↵Viktor Kutuzov
assign_large_valloc_to_global.cc test case Differential Revision: http://reviews.llvm.org/D4525 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213135 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16Add FreeBSD support to the address sanitizer's atexit_stats.cc test caseViktor Kutuzov
Differential Revision: http://reviews.llvm.org/D4524 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213134 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16Remove explicit references to libdl from Asan test casesViktor Kutuzov
Differential Revision: http://reviews.llvm.org/D4499 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213131 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-16Add FreeBSD support to the address sanitizer's null_deref.cc test caseViktor Kutuzov
Differential Revision: http://reviews.llvm.org/D4421 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213130 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-15[ASan] Add ASan debugging API to get malloc/free stack traces and shadow ↵Kuba Brecka
memory mapping info Reviewed at http://reviews.llvm.org/D4466 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213080 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-15tsan: remove special handling of false reports coming from JVMDmitry Vyukov
There is now a more common functionality in the form of called_from_lib suppressions. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213057 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-15tsan: remove compat mappingDmitry Vyukov
There are no known usages anymore, so one less thing to support. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213056 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-15[sanitizer] De-flake one test.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213054 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-15[ASan] Only define macros in asan_init_version.h, move the __asan_init ↵Timur Iskhodzhanov
declaration back to asan_interface_internal.h This fixes the issues we've uncovered after landing r212815. Reviewed at http://reviews.llvm.org/D4500 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@213053 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14Add support for intercepting thunks of the formEhsan Akhgari
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212979 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[ASan/Win] Add a test for the case when dll_thunk is linked twice to the ↵Timur Iskhodzhanov
same DLL This is a test case for r212815. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212959 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[tsan] honour XFAIL in tsan/test_output.shKostya Serebryany
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212952 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[tsan] add a printf to a testKostya Serebryany
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212951 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[tsan] add a currently-failing test with a must-deadlockKostya Serebryany
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212944 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[ASan] Fix a couple of nits in NULL deref testsTimur Iskhodzhanov
This is a follow-up to r212807 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212943 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[sanitizer] Intercept getpass.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212937 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[msan] Stop demangling function name in the stack origin report.Evgeniy Stepanov
This was done by calling __cxa_demangle directly, which is bad when c++abi library is instrumented. The following line always contains the demangled name (when running with a symbolizer) anyway. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212929 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-14[asan] Remove XFAIL:android from 2 newly passing tests.Evgeniy Stepanov
Fixed in r212872. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212926 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-12[ASan] Collect unmangled names of global variables in Clang to print them in ↵Alexey Samsonov
error reports. Currently ASan instrumentation pass creates a string with global name for each instrumented global (to include global names in the error report). Global name is already mangled at this point, and we may not be able to demangle it at runtime (e.g. there is no __cxa_demangle on Android). Instead, create a string with fully qualified global name in Clang, and pass it to ASan instrumentation pass in llvm.asan.globals metadata. If there is no metadata for some global, ASan will use the original algorithm. This fixes https://code.google.com/p/address-sanitizer/issues/detail?id=264. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212872 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-11[ASan] Improve ODR-violation error reports.Alexey Samsonov
Demangle names of involved globals. Print a more consistent summary line. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212857 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-11[asan] fix x32 build, patch by H.J. LuKostya Serebryany
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212823 91177308-0d34-0410-b5e6-96231b3b80d8