summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* unittests: Make the expected value the first argument in EXPECT_EQ [NFC]Tobias Grosser2016-08-261-33/+32
| | | | | | | | | | | This improves the readability of failing test results, as gtest prints always the first argument as the 'expected value'. In the previous commit we already changed the tests for isl_valFromAPInt. In this commit, the tests for IslValToAPInt follow. Suggested-by: Michael Kruse <llvm@meinersbur.de> llvm-svn: 279817
* [compiler-rt] Allow c++ abi to be explictly disabled in cmake configurationDean Michael Berris2016-08-261-1/+1
| | | | | | | | | | | | Summary: This will allow for the sanitizers to be used when c++ abi is unavailable. Reviewers: samsonov, beanz, pcc, rnk Subscribers: llvm-commits, kubabrecka, compnerd, dberris Differential Revision: https://reviews.llvm.org/D23376 llvm-svn: 279816
* Improve documentation and testing for isl_valFromAPIntTobias Grosser2016-08-263-5/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | The recent unit tests we gained made clear that the semantics of isl_valFromAPInt are not clear, due to missing documentation. In this change we document both the calling interface as well as the implementation of isl_valFromAPInt. We also make the implementation easier to read by removing integer wrappig in abs() when passing in the minimal integer value for a given bitwidth. Even though wrapping and subsequently interpreting the result as unsigned value gives the correct result, this is far from obvious. Instead, we explicitly add one more bit to the input type to ensure that abs will never wrap. This change did not uncover a bug in the old implementation, but was introduced to increase readability. We update the tests to add a test case for this special case and use this opportunity to also test a number larger than 64 bit. Finally, we order the arguments of the test cases to make sure the expected output is first. This helps readability in case of failing test cases as gtest assumes the first value to be the exected value. Reviewed-by: Michael Kruse <llvm@meinersbur.de> Differential Revision: https://reviews.llvm.org/D23917 llvm-svn: 279815
* [clang-tidy] Some tweaks on header guard checks.Haojian Wu2016-08-265-26/+34
| | | | | | | | * Implement missing storeOption interfaces. * Remove unnecessary parameter copy in isHeaderFileExtension. * Fix doc style. llvm-svn: 279814
* Improve documentation and testing of APIntFromValTobias Grosser2016-08-263-7/+133
| | | | | | | | | | | | | | The recent unit tests we gained made clear that the semantics of APIntFromVal are not clear, due to missing documentation. In this change we document both the calling interface as well as the implementation of APIntFromVal. We also make the implementation easier to read by removing the use of magic numbers. Finally, we add tests to check the bitwidth of the created values as well as the correct modeling of very large numbers. Reviewed-by: Michael Kruse <llvm@meinersbur.de> Differential Revision: https://reviews.llvm.org/D23910 llvm-svn: 279813
* Switch linux and android CODE_OWNERSPavel Labath2016-08-261-2/+2
| | | | | | | | | | | | | | Summary: Oleksiy is no longer active in LLDB, I'd like to formally assume ownership of the linux and android parts. Reviewers: ovyalov, clayborg Subscribers: tberghammer, danalbert, lldb-commits Differential Revision: https://reviews.llvm.org/D23877 llvm-svn: 279812
* [X86][SSE4A] The EXTRQ/INSERTQ bit extraction/insertion ops should be in the ↵Simon Pilgrim2016-08-263-8/+147
| | | | | | integer domain llvm-svn: 279811
* Implement support for --build-id=uuid switchEugene Leviant2016-08-266-2/+28
| | | | | | Differential revision: https://reviews.llvm.org/D23349 llvm-svn: 279810
* [ELF] Added test case for PROVIDE and PROVIDE_HIDDEN within sectionEugene Leviant2016-08-261-1/+8
| | | | llvm-svn: 279809
* Add cmake option to choose whether to use the builtin demanglerPavel Labath2016-08-262-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Previously the builting demangler was on for platforms that explicitly set a flag by modifying Mangled.cpp (windows, freebsd). The Xcode build always used builtin demangler by passing a compiler flag. This adds a cmake flag (defaulting to ON) to configure the demangling library used at build time. The flag is only available on non-windows platforms as there the system demangler is not present (in the form we're trying to use it, at least). The impact of this change is: - linux: switches to the builtin demangler - freebsd, windows: NFC (I hope) - netbsd: switches to the builtin demangler - osx cmake build: switches to the builtin demangler (matching the XCode build) The main motivation for this is the cross-platform case, where it should bring more consistency by removing the dependency on the host demangler (which can be completely unrelated to the debug target). Reviewers: zturner, emaste, krytarowski Subscribers: emaste, clayborg, lldb-commits Differential Revision: https://reviews.llvm.org/D23830 llvm-svn: 279808
* Implement getRandomBytes() functionEugene Leviant2016-08-263-0/+42
| | | | | | | | | This function allows getting arbitrary sized block of random bytes. Primary motivation is support for --build-id=uuid in lld. Differential revision: https://reviews.llvm.org/D23671 llvm-svn: 279807
* [X86][SSE] Add CMPSS/CMPSD intrinsic scalar load folding support.Craig Topper2016-08-262-0/+26
| | | | llvm-svn: 279806
* [compiler-rt][XRay] Initial per-thread inmemory logging implementationDean Michael Berris2016-08-268-5/+359
| | | | | | | | | | | | | | | | | | | | | | Depends on D21612 which implements the building blocks for the compiler-rt implementation of the XRay runtime. We use a naive in-memory log of fixed-size entries that get written out to a log file when the buffers are full, and when the thread exits. This implementation lays some foundations on to allowing for more complex XRay records to be written to the log in subsequent changes. It also defines the format that the function call accounting tool in D21987 will start building upon. Once D21987 lands, we should be able to start defining more tests using that tool once the function call accounting tool becomes part of the llvm distribution. Reviewers: echristo, kcc, rnk, eugenis, majnemer, rSerge Subscribers: sdardis, rSerge, dberris, tberghammer, danalbert, srhines, majnemer, llvm-commits, mehdi_amini Differential Revision: https://reviews.llvm.org/D21982 llvm-svn: 279805
* Replace subregister uses when processing tied operandsMatt Arsenault2016-08-263-12/+36
| | | | | | | | | | | | | | | | | | | | | This was for some reason skipping operands that are subregisters instead of keeping the same subregister index. v_movreld_b32 expects src0 to be the subregister of the tied super register use/def. e.g. v_movreld_b32 v0, v9, <imp-def, tied3> v[0:3], <imp-use, tied2> v[0:3] was being replaced with v[4:7] = copy v[0:3] v_movreld_b32 v0, v9, <imp-def, tied3> v[4:7], <imp-use, tied2> v[4:7], which really writes to v[0:3] llvm-svn: 279804
* [clang-tidy] Added hh, hxx and hpp to header guard checks.Mads Ravn2016-08-267-9/+62
| | | | | | | | Changed the extension check to include the option of ",h,hh,hpp,hxx" instead of just returning whether the file ended with ".h". Differential revision: https://reviews.llvm.org/D20512 llvm-svn: 279803
* Include tests only if COMPILER_RT_BUILD_XRAY is ON.Dean Michael Berris2016-08-261-23/+25
| | | | | | | | This should un-break users that have not re-generated their CMake configs when they ran it when this was defaulted to OFF. Related to r277975 post-commit review. llvm-svn: 279802
* Fix singlton -> singleton typo.Eric Christopher2016-08-265-5/+5
| | | | llvm-svn: 279801
* Make all the Function implementations different so the compiler won't share ↵Jim Ingham2016-08-262-56/+54
| | | | | | | | | | | | | | them. Clang on ARM64 was making the three Function methods with identical bodies have one implementation that was shared. That threw off the count of breakpoints, since we don't count as separate locations three functions with the same address. I also cleaned up the test case while I was at it. <rdar://problem/27001915> llvm-svn: 279800
* Sort list of driver-known file extensions. It was previously approximatelyRichard Smith2016-08-261-25/+25
| | | | | | ordered by length then alphabetically; apply that order consistently. llvm-svn: 279799
* Additional update missed by r279793, should hopefully make the PPC sanitizer ↵Richard Smith2016-08-261-0/+1
| | | | | | bots happy again. llvm-svn: 279798
* Fix the static_assert added in r279536.Akira Hatanaka2016-08-261-2/+2
| | | | | | | | The assertion doesn't always hold true as sizeof(SDNodeBits) isn't equal to sizeof(uint16_t) for some targets. For example, sizeof(SDNodeBits) evaluates to 1, not 2, for ARM's APCS targets. llvm-svn: 279797
* [libFuzzer] simplify a test to make it pass on the botKostya Serebryany2016-08-261-1/+1
| | | | llvm-svn: 279796
* C++ Modules TS: add frontend support for building pcm files from moduleRichard Smith2016-08-2627-116/+296
| | | | | | | interface files. At the moment, all declarations (and no macros) are exported, and 'export' declarations are not supported yet. llvm-svn: 279794
* [sanitizer] enable random shuffling the memory chunks inside the allocator, ↵Kostya Serebryany2016-08-269-0/+63
| | | | | | under a flag. Set this flag for the scudo allocator, add a test. llvm-svn: 279793
* [libFuzzer] make sure we have symbols on fuzzer testsKostya Serebryany2016-08-251-1/+1
| | | | llvm-svn: 279792
* [asan] remove unused kAsanHeapRightRedzoneMagic (NFC); part 2 (sorry)Kostya Serebryany2016-08-251-1/+0
| | | | llvm-svn: 279790
* [asan] remove unused kAsanHeapRightRedzoneMagic (NFC)Kostya Serebryany2016-08-252-4/+0
| | | | llvm-svn: 279789
* Revert r274613 because it breaks the test suite with AVX512Michael Kuperstein2016-08-2514-481/+1108
| | | | | | | | | | | | This reverts most of r274613 (AKA r274626) and its follow-ups (r276347, r277289), due to miscompiles in the test suite. The FastISel change was left in, because it apparently fixes an unrelated issue. (Recommit of r279782 which was broken due to a bad merge.) This fixes 4 out of the 5 test failures in PR29112. llvm-svn: 279788
* [libFizzer] rename -print_new_cov_pcs=1 into -print_pcs=1 and make it more ↵Kostya Serebryany2016-08-257-12/+30
| | | | | | useful: print PCs only after the initial corpus has been read and symbolize them llvm-svn: 279787
* Widen type of __offset_flags in RTTI on Mingw64Reid Kleckner2016-08-252-4/+27
| | | | | | | | | | | | Otherwise we can't handle secondary base classes at offsets greater than 2**24. This agrees with libstdc++abi. We could extend this change to other LLP64 platforms, but then we would want to update libc++abi and it would require additional review. Fixes PR29116 llvm-svn: 279786
* Revert r279782 due to debug buildbot breakage.Michael Kuperstein2016-08-2514-1112/+480
| | | | llvm-svn: 279785
* Add a notification message in 'type lookup' when the current language ↵Enrico Granata2016-08-251-9/+19
| | | | | | | | doesn't yield results and one has to go across multiple languages to scan for types Fixes rdar://22422313 llvm-svn: 279784
* Fix ArrayRef initializer_list Ctor TestDavid Blaikie2016-08-251-1/+2
| | | | | | | | | | The InitializerList test had undefined behavior by creating a dangling pointer to the temporary initializer list. This patch removes the undefined behavior in the test by creating the initializer list directly. Reviewers: mehdi_amini, dblaikie Differential Revision: https://reviews.llvm.org/D23890 llvm-svn: 279783
* Revert r274613 because it breaks the test suite with AVX512Michael Kuperstein2016-08-2514-480/+1112
| | | | | | | | | | This reverts most of r274613 and its follow-ups (r276347, r277289), due to miscompiles in the test suite. The FastISel change was left in, because it apparently fixes an unrelated issue. This fixes 4 out of the 5 test failures in PR29112. llvm-svn: 279782
* [asan] fix windows botKostya Serebryany2016-08-251-0/+1
| | | | llvm-svn: 279781
* [sanitizer] add __sanitizer_symbolize_pc. ↵Kostya Serebryany2016-08-253-0/+47
| | | | | | https://github.com/google/sanitizers/issues/322 llvm-svn: 279780
* [StreamExecutor] Add Platform and PlatformManagerJason Henline2016-08-255-0/+154
| | | | | | | | | | | | Summary: Abstractions for a StreamExecutor platform Reviewers: jlebar Subscribers: jprice, parallel_libs-commits Differential Revision: https://reviews.llvm.org/D23857 llvm-svn: 279779
* [MemCpy] Add comments for r279769Tim Shen2016-08-252-1/+3
| | | | | | Differential Revision: https://reviews.llvm.org/D23846 llvm-svn: 279778
* cmake: Install CheckAtomic.cmake (needed by lldb)Chris Bieneman2016-08-251-2/+1
| | | | | | | | | | | | | | | Summary: Install CheckAtomic.cmake along with other LLVM modules, therefore making it possible for other projects to use it. This file is needed for LLDB to be built standalone, and installing it was suggested in https://reviews.llvm.org/D23881. Patch by: Michał Górny Reviewers: krytarowski, zturner, eugenis, jyknight, labath, beanz Subscribers: beanz, llvm-commits Differential Revision: https://reviews.llvm.org/D23887 llvm-svn: 279777
* [CMake] Add support for exposing runtime targetsChris Bieneman2016-08-252-11/+44
| | | | | | | | This patch adds support to the runtimes build for exposing sub-project targets through the high-level configuration. This will enable exposing the build, check and install targets for sub-project components (i.e. asan, check-asan, install-asan...). This patch requires minor changes to the runtime projects to take advantage of it, and I'll phase those changes into Compiler-RT shortly. llvm-svn: 279776
* Fix test corresponding to change r279770Hemant Kulkarni2016-08-252-29/+18
| | | | llvm-svn: 279775
* [MS] Win64 va_arg should expect large arguments to be passed indirectlyReid Kleckner2016-08-252-9/+22
| | | | | | Fixes PR20569 llvm-svn: 279774
* ARM: by default don't set the Thumb bit on MachO relocated values.Tim Northover2016-08-253-10/+42
| | | | | | | | | | | | | Its existence is largely historical, apparently we tried to make ARM object files look maybe-almost-possibly runnable by putting our best guess at the actual value into relocated locations. Of course, the real linker then comes along and can completely change things. But it should only be there for word-sized and movw/movt relocations. It can't be encoded in branch relocations, and I've seen it mess up validity calculations twice in the last couple of weeks so the default is clearly problematic. llvm-svn: 279773
* Fix clang-offload-bundler.c test on WindowsReid Kleckner2016-08-251-1/+1
| | | | llvm-svn: 279772
* [sanitizer] change SizeClassAllocator64 to accept just one template ↵Kostya Serebryany2016-08-258-47/+121
| | | | | | parameter instead of 5. First, this will make the mangled names shorter. Second, this will make adding more parameters simpler. llvm-svn: 279771
* llvm-objdump: ELF: Handle code and data mix in all scenariosHemant Kulkarni2016-08-253-11/+149
| | | | | | Differential Revision: https://reviews.llvm.org/D23621 llvm-svn: 279770
* [MemCpy] Check for alias in performMemCpyToMemSetOptzn, instead of the ↵Tim Shen2016-08-252-1/+41
| | | | | | | | | | | | | | | identity of two operands Summary: This fixes pr29105. The reason is that lifetime marks creates new aliasing pointers the original ones, but before this patch aliases were not checked in performMemCpyToMemSetOptzn. Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D23846 llvm-svn: 279769
* [lsan] one more test fix to please the Debian Sid bot (this time, confirmed ↵Kostya Serebryany2016-08-251-3/+3
| | | | | | on the proper machine). Apparently, newer glibc uses slightly more stack llvm-svn: 279768
* Reuse an SDLoc throughout a function. NFC.Michael Kuperstein2016-08-251-18/+12
| | | | llvm-svn: 279767
* Refactor to remove the assumption that we know the name of the module we're ↵Richard Smith2016-08-255-12/+18
| | | | | | emitting at the point when we create a PCHGenerator (with the C++ modules TS, we find that out part way through parsing the input). llvm-svn: 279766
OpenPOWER on IntegriCloud