summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* This adds support for Cortex-A73 as an available target.Sjoerd Meijer2016-06-028-2/+42
| | | | | | Differential Revision: http://reviews.llvm.org/D20865 llvm-svn: 271508
* This adds target support and tests for Cortex-A73Sjoerd Meijer2016-06-027-1/+47
| | | | | | Differential Revision: http://reviews.llvm.org/D20864 llvm-svn: 271507
* [ELF] Split too long X86_64TargetInfo::relaxGot method. NFC.George Rimar2016-06-021-41/+49
| | | | | | Patch adds relaxGotNoPic() method to handle no-PIC path. llvm-svn: 271506
* Add tests to Support/MathExtrasDylan McKay2016-06-021-0/+29
| | | | | | | | | In r271380, I added several functions to get the minimum/maximum values of n-width integers. This just adds tests for them. llvm-svn: 271505
* Switch statistics to use relaxed updates to a std::atomic.Chandler Carruth2016-06-021-24/+19
| | | | | | | | | | | | This removes usage of the hacky, incorrect, and TSan-unfriendly home-grown atomics. It should actually be more efficient in some cases. Based on our existing usage of <atomic>, all of this is portably available AFAICT. One small challenge is initializing the stastic, but I've tried a comparable sample out on MSVC (the most likely to complain here) and it seems to work. Will have to watch the build bots of course. llvm-svn: 271504
* [ADT] Remove unused multiply and divide operator overloads onChandler Carruth2016-06-021-18/+0
| | | | | | | | | | | statistics. Scaling statistics atomically doesn't make any sense anyways, and none were using these. If you find yourself wanting to do this, you should probably keep a local count that you scale and then apply that after scaling to the shared statistic object. llvm-svn: 271503
* Add not_fn test for throwing operator!Eric Fiselier2016-06-021-0/+8
| | | | llvm-svn: 271502
* Fix TEST_HAS_NO_EXCEPTIONS misspelling in the test suite.Eric Fiselier2016-06-021-1/+1
| | | | llvm-svn: 271501
* Partially revert r270816: build with -fvisibility=hidden.Eric Fiselier2016-06-022-3/+0
| | | | | | | | | | | | | | | | | This patch breaks the ABI on linux when libc++abi.a is statically linked into libc++.so. Certain libc++ symbols get exported from libc++abi.a as hidden and therefore they also get hidden in libc++.so. The symbols is question are: * _ZNKSt3__121__basic_string_commonILb1EE20__throw_out_of_rangeEv * _ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv * _ZNKSt3__120__vector_base_commonILb1EE20__throw_length_errorEv I imagine we just need to fix the visibility for these symbols in the libc++ headers but I'm reverting the patch until it's sorted. llvm-svn: 271500
* [X86][AVX512] add intrinsics of Scalar FP to integerAsaf Badouh2016-06-022-0/+122
| | | | | | Differential Revision: http://reviews.llvm.org/D20861 llvm-svn: 271499
* [Clang][AVX512][INTRINSICS] adding round cvt and fix regular cvtps_phMichael Zuckerman2016-06-022-8/+63
| | | | | | Differential Revision: http://reviews.llvm.org/D20870 llvm-svn: 271498
* [CodeView] Use the right type index for long longDavid Majnemer2016-06-023-22/+33
| | | | | | We used T_INT8 instead of T_QUAD. llvm-svn: 271497
* [CodeView] Take the StreamRef::readBytes offset into account when validatingDavid Majnemer2016-06-022-1/+3
| | | | | | | | We only considered the length of the operation and the length of the StreamRef without considered what it meant for the offset to be at a non-zero position. llvm-svn: 271496
* [CodeView] Remove superfluous bitmathDavid Majnemer2016-06-021-1/+1
| | | | llvm-svn: 271495
* [codeview] Return type indices for typedefsDavid Majnemer2016-06-023-0/+51
| | | | | | | Use the type index of the underlying type unless we have a typedef from long to HRESULT; HRESULT typedefs are translated to T_HRESULT. llvm-svn: 271494
* [libFuzzer] fix docsKostya Serebryany2016-06-021-5/+4
| | | | llvm-svn: 271493
* [LibFuzzer] Disable compiling and running the LibFuzzer dataflow sanitizer ↵Dan Liew2016-06-024-1/+19
| | | | | | | | | | | tests on Apple platforms. This fixes a broken part of the build on OSX as the dataflow sanitizer is not supported on OSX yet. Differential Revision: http://reviews.llvm.org/D20894 llvm-svn: 271492
* [LibFuzzer] Reimplement how the optional user functions are called.Dan Liew2016-06-029-20/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | The motivation for this change is to fix linking issues on OSX. However this only partially fixes linking issues (the uninstrumented tests and a few others won't succesfully link yet). This change introduces a struct of function pointers (``fuzzer::ExternalFuntions``) which when initialised will point to the optional functions if they are available. Currently these ``LLVMFuzzerInitialize`` and ``LLVMFuzzerCustomMutator`` functions. Two implementations of ``fuzzer::ExternalFunctions`` constructor are provided one for Linux and one for OSX. The OSX implementation uses ``dlsym()`` because the prior implementation using weak symbols does not work unless the additional flags are passed to the linker. The Linux implementation continues to use weak symbols because the ``dlsym()`` approach does not work unless additional flags are passed to the linker. Differential Revision: http://reviews.llvm.org/D20741 llvm-svn: 271491
* [libFuzzer] docs: add contact, mention more trophies Kostya Serebryany2016-06-021-1/+2
| | | | llvm-svn: 271490
* Mark LWG issue 2545 as complete. Add extra testsEric Fiselier2016-06-023-1/+133
| | | | llvm-svn: 271489
* [pdb] Parse and dump section map and section contribsZachary Turner2016-06-0217-322/+1196
| | | | | | | Differential Revision: http://reviews.llvm.org/D20876 Reviewed By: rnk, ruiu llvm-svn: 271488
* Fix leak in __enable_weak_this(). Thanks to Arthur O'Dwyer for finding it.Eric Fiselier2016-06-022-3/+37
| | | | llvm-svn: 271487
* [AVX512] Add 512-bit load/stores to fast isel.Craig Topper2016-06-021-0/+46
| | | | llvm-svn: 271486
* [X86] No need to use 256-bit VMOVNTPS for integer types when only AVX1 is ↵Craig Topper2016-06-021-15/+1
| | | | | | | | supported. VMOVNTDQ is available with AVX1. We were getting this right for v4i64 but not the other integer types. llvm-svn: 271482
* [X86] Add AVX 256-bit load and stores to fast isel.Craig Topper2016-06-022-18/+61
| | | | | | | | I'm not sure why this was missing for so long. This also exposed that we were picking floating point 256-bit VMOVNTPS for some integer types in normal isel for AVX1 even though VMOVNTDQ is available. In practice it doesn't matter due to the execution dependency fix pass, but it required extra isel patterns. Fixing that in a follow up commit. llvm-svn: 271481
* [X86] Use uint16_t for a couple arrays of instruction opcodes. NFCCraig Topper2016-06-021-2/+2
| | | | llvm-svn: 271480
* [AVX512] Remove LOADA/LOADU/STOREA/STOREU intrinsic types now that they are ↵Craig Topper2016-06-022-52/+3
| | | | | | unused. llvm-svn: 271479
* [AVX512] Remove masked load intrinsics. Clang now emits generic masked load ↵Craig Topper2016-06-0211-696/+626
| | | | | | | | intrinsics instead. The intrinsics will be autoupgraded to the same generic masked loads. llvm-svn: 271478
* Mark LWG issue 2218 as complete.Eric Fiselier2016-06-021-1/+1
| | | | | | | LWG issue 2218 relaxes a restriction on how containers can call Alloc::construct(...) and Alloc::destroy(...). There is nothing new to test. llvm-svn: 271477
* Mark LWG issue 2336 as complete. There is nothing to do.Eric Fiselier2016-06-021-1/+1
| | | | llvm-svn: 271476
* Mark LWG issue 2250 as completeEric Fiselier2016-06-0210-91/+115
| | | | llvm-svn: 271475
* [asan] fix arm buildKostya Serebryany2016-06-022-3/+3
| | | | llvm-svn: 271474
* Mark LWG issue 2450 as complete.Eric Fiselier2016-06-028-7/+81
| | | | llvm-svn: 271473
* [docs] Fix misplaced commaVedant Kumar2016-06-021-1/+1
| | | | llvm-svn: 271472
* [docs] Minor formatting changes and typo fixesVedant Kumar2016-06-021-11/+10
| | | | llvm-svn: 271471
* [libcxxabi] Allow target flags to affect configuration tests.Eric Fiselier2016-06-023-11/+33
| | | | | | | | | | | | | | | | | | | | | Summary: This patch changes the libc++abi CMake so that it adds certain target flags like '-m32' or '--gcc-toolchain' before including `config-ix.cmake`. Since these flags can affect things like `check_library_exists([...])` they needed to be added before the tests are performed. Additionally this patch adds `LIBCXXABI_BUILD_32_BITS` which defaults to `LLVM_BUILD_32_BITS`. This patch fixes: https://llvm.org/bugs/show_bug.cgi?id=27950 https://llvm.org/bugs/show_bug.cgi?id=27959 Reviewers: danalbert, jroelofs, bcraig, compnerd, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20886 llvm-svn: 271470
* Update libcxx.llvm.org documentation by linking to new docs.Eric Fiselier2016-06-023-487/+82
| | | | | | | | | | | | | | | Summary: Currently much of the libcxx website is duplicated between the old www/ documentation and newer Sphinx docs. This patch changes the main libc++ webpage so that it links to the new documentation where possible. This means removing numerous sections from the landing page. @mclow.lists What do you think? Reviewers: mclow.lists Subscribers: cfe-commits, mclow.lists Differential Revision: http://reviews.llvm.org/D19250 llvm-svn: 271469
* Add "REQUIRES-ANY" feature testEric Fiselier2016-06-024-3/+19
| | | | | | | | | | | | | | | | Summary: This patch adds a "REQUIRES-ANY" feature test that is disjunctive. This marks a test as `UNSUPPORTED` if none of the specified features are available. Libc++ has the need to write feature test such as `// REQUIRES-ANY: c++98, c++03` when testing of behavior that is specific to older dialects but has since changed. Reviewers: rnk, ddunbar Subscribers: ddunbar, probinson, llvm-commits, cfe-commits Differential Revision: http://reviews.llvm.org/D20757 llvm-svn: 271468
* make icall pass name consistent /NFCXinliang David Li2016-06-023-7/+7
| | | | llvm-svn: 271467
* Attempt to fix libunwind buildEric Fiselier2016-06-021-2/+2
| | | | llvm-svn: 271466
* [libFuzzer] use __sanitizer_print_memory_profile to print the memory profile ↵Kostya Serebryany2016-06-022-1/+5
| | | | | | on OOM llvm-svn: 271465
* Add C++17 std::not_fn negator.Eric Fiselier2016-06-024-4/+627
| | | | | | | | | | | | | | | Summary: Exactly what it sounds like. I plan to commit this in a couple of days assuming no objections. Reviewers: mclow.lists, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20799 llvm-svn: 271464
* [asan] add an interface function __sanitizer_print_memory_profile (a basic ↵Kostya Serebryany2016-06-026-2/+139
| | | | | | memory profiler; asan/Linux-only for now) llvm-svn: 271463
* Add status/warning message for 32 bit buildsEric Fiselier2016-06-021-0/+10
| | | | llvm-svn: 271462
* [docs] Use cpp code-blocks where appropriateVedant Kumar2016-06-021-2/+2
| | | | llvm-svn: 271461
* [libcxx] Allow target flags to affect CMake configuration testsEric Fiselier2016-06-022-8/+32
| | | | | | | | | | | | | | | | | | Summary: This patch changes the libc++ CMake so that it adds certain target flags like '-m32' or '--gcc-toolchain' before including config-ix.cmake. Since these flags can affect things like check_library_exists([...]) they needed to be added before the tests are performed. This patch fixes: https://llvm.org/bugs/show_bug.cgi?id=24322 Reviewers: danalbert, jroelofs, bcraig, compnerd Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20887 llvm-svn: 271460
* Remove enable_shared_from_this test since it leaks the control block and ↵Eric Fiselier2016-06-021-26/+0
| | | | | | fails with ASAN llvm-svn: 271459
* [libunwind] Allow target flags to affect CMake configuration testsEric Fiselier2016-06-022-22/+37
| | | | | | | | | | | | | | | | | | | | | Summary: This patch changes the libunwind CMake so that it adds certain target flags like '-m32' or '--gcc-toolchain' before including config-ix.cmake. Since these flags can affect things like check_library_exists([...]) they needed to be added before the tests are performed. Additionally this patch adds LIBUNWIND_BUILD_32_BITS which defaults to LLVM_BUILD_32_BITS. This patch fixes: https://llvm.org/bugs/show_bug.cgi?id=27950 https://llvm.org/bugs/show_bug.cgi?id=27959 Reviewers: jroelofs, danalbert, bcraig, rmaprath, compnerd Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20889 llvm-svn: 271458
* [docs] Add missing newline to console sectionVedant Kumar2016-06-021-0/+1
| | | | llvm-svn: 271457
* Inline isDereferenceableFromAttribute; NFCSanjoy Das2016-06-021-19/+8
| | | | | | | | Now that `Value::getPointerDereferenceableBytes` looks beyond just attributes, the name `isDereferenceableFromAttribute` is misleading. Just inline the function, since it is small and only used once. llvm-svn: 271456
OpenPOWER on IntegriCloud