summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Basic: fix __{,U}INTPTR_TYPE__ on ARMSaleem Abdulrasool2017-10-183-36/+39
| | | | | | | | | | Darwin and OpenBSD are the only platforms which use `long int` for `__INTPTR_TYPE__`. The other platforms use `int` in 32-bit, and `long int` on 64-bit (except for VMS and Windows which are LLP64). Adjust the type definitions to match the platform definitions. We now generate the same definition as GCC on all the targets. llvm-svn: 316046
* [GlobalDCE] Use DenseMap instead of unordered_multimap for GVDependencies.Michael Zolotukhin2017-10-172-4/+4
| | | | | | | | | | | | | | | Summary: std::unordered_multimap happens to be very slow when the number of elements grows large. On one of our internal applications we observed a 17x compile time improvement from changing it to DenseMap. Reviewers: mehdi_amini, serge-sans-paille, davide Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D38916 llvm-svn: 316045
* lit: Improve %: normalization.Peter Collingbourne2017-10-171-17/+16
| | | | | | | | | The new scheme should match the normalization of embedded paths in linkrepro tar files. Differential Revision: https://reviews.llvm.org/D39023 llvm-svn: 316044
* Resubmit "[lit] Raise the logic for enabling clang & lld substitutions to llvm."Zachary Turner2017-10-171-136/+21
| | | | | | | The substitution for %debuginfo_tests had been inadvertently removed. This adds it back. llvm-svn: 316043
* Basic: fix `__INTPTR_TYPE__` for Windows ARMSaleem Abdulrasool2017-10-172-0/+6
| | | | | | | The `IntPtrType` for Windows ARM should be `int` as per MSVC. Adjust the type accordingly. llvm-svn: 316042
* [Analyzer] Always use non-reference types when creating expressions in BodyFarm.George Karpenkov2017-10-172-23/+15
| | | | | | | | | | | | | | Remove an option to use a reference type (on by default!) since a non-reference type is always needed for creating expressions, functions with multiple boolean parameters are very hard to use, and in general it was just a booby trap for further crashes. Furthermore, generalize call_once test case to fix some of the crashes mentioned https://bugs.llvm.org/show_bug.cgi?id=34869 Also removes std::call_once crash. Differential Revision: https://reviews.llvm.org/D39015 llvm-svn: 316041
* Silence some "implicit conversion of string literal" warningsPavel Labath2017-10-172-7/+7
| | | | llvm-svn: 316038
* AMDGPU : Fix an error for the llvm.cttz implementation.Wei Ding2017-10-172-3/+5
| | | | | | Differential Revision: http://reviews.llvm.org/D39014 llvm-svn: 316037
* AArch64: Enable AES instruction fusion on Cyclone.Matthias Braun2017-10-171-2/+5
| | | | | | | | | | | Note that cyclone itself doesn't fuse, but newer apple chips do and we are using cyclone as the default when targeting apple OSes. The current code also does not capture all fusion patterns of apple CPUs yet; I am still looking for ways to refactor the code nicely to extend it. llvm-svn: 316036
* AArch64: account for possible frame index operand in compares.Tim Northover2017-10-173-0/+28
| | | | | | | | | If the address of a local is used in a comparison, AArch64 can fold the address-calculation into the comparison via "adds". Unfortunately, a couple of places (both hit in this one test) are not ready to deal with that yet and just assume the first source operand is a register. llvm-svn: 316035
* [Transforms] Fix some Clang-tidy modernize and Include What You Use ↵Eugene Zelenko2017-10-1714-201/+404
| | | | | | warnings; other minor fixes (NFC). llvm-svn: 316034
* [X86][SSE] Tests packuswb/truncation codegen from PR34773Simon Pilgrim2017-10-171-0/+120
| | | | llvm-svn: 316033
* Fix PR34981, a crash-on-invalid merging dllimport to an invalid redecl.Nico Weber2017-10-172-3/+9
| | | | | | This is basically like r288207, just the other way round. llvm-svn: 316032
* [MachineOutliner][NFC] Clean up prune logic a bitJessica Paquette2017-10-171-33/+36
| | | | | | | | Move the prune logic in pruneOverlaps to a new function, prune. This lets us reuse the prune functionality. Makes the code a bit more readable. It'll also make it easier to emit remarks/debug statements for pruned functions. llvm-svn: 316031
* [CFG] Relax Wexceptions warning on rethrow Erich Keane2017-10-172-5/+22
| | | | | | | | | | | | As reported here: https://bugs.llvm.org/show_bug.cgi?id=34973 "catch(...)" should catch EVERYTHING, even a rethrow. This patch changes the order in which things are checked to ensure that a '...' catch will get a rethrow. Differential Revision: https://reviews.llvm.org/D39013 llvm-svn: 316030
* Revert "[cmake] Use find_package to discover zlib"Vassil Vassilev2017-10-172-5/+2
| | | | | | We are investigating what went wrong. llvm-svn: 316029
* This test case was missing -fsyntax-only, so I've added it. NFC to the ↵Aaron Ballman2017-10-171-1/+1
| | | | | | actual test contents, just how the test is executed. llvm-svn: 316028
* Fix typo in checkTwoLevelHintsCommandJessica Paquette2017-10-171-1/+1
| | | | | | BigSize had a copy/paste typo in it. This fixes that. llvm-svn: 316027
* Enable support for the [[nodiscard]] attribute from WG14 N2050 when enabling ↵Aaron Ballman2017-10-173-3/+53
| | | | | | double square bracket attributes in C code. llvm-svn: 316026
* [cmake] Use find_package to discover zlibVassil Vassilev2017-10-172-2/+5
| | | | | | | | | This allows us to use standard cmake utilities to point to non-system zlib locations. Patch by Oksana Shadura and me (D39002). llvm-svn: 316025
* AMDGPU: Start generating metadata for MaxFlatWorkGroupSizeKonstantin Zhuravlyov2017-10-174-12/+28
| | | | | | Differential Revision: https://reviews.llvm.org/D38958 llvm-svn: 316024
* Revert "[asan] Deflake one test by running it 3 times."Evgeniy Stepanov2017-10-171-18/+3
| | | | | | Disable this test on Android/x86 only. llvm-svn: 316023
* Expose ConsumeAnyToken interface to external clients.Vassil Vassilev2017-10-171-20/+21
| | | | llvm-svn: 316022
* Refactor std::list node allocation logic.Eric Fiselier2017-10-171-33/+23
| | | | | | | | | | | | The logic to allocate a node within std::list was repeated in a bunch of places. This is unneeded. This patch refactors the shared logic into a single function to reduce duplication. This patch is part of a set to clean up node construction in general, but refactoring construction requires some more work to make it work cleanly in C++03 llvm-svn: 316021
* [MachineOutliner][NFC] Move decrement logic to OutlinedFunctionJessica Paquette2017-10-171-16/+26
| | | | | | | | | | | This commit moves the decrement logic for outlined functions into the class, and makes OccurrenceCount private. It can now be accessed via getOccurrenceCount(). This makes it more difficult to accidentally introduce bugs by incorrectly decrementing the occurrence count on OutlinedFunctions. llvm-svn: 316020
* [MachineOutliner][NFC] Move end index calculation into CandidateJessica Paquette2017-10-171-20/+31
| | | | | | | | Cleanup to Candidate that moves all end index calculations into Candidate.endIdx(). For the sake of consistency, StartIdx and Len are now private members, and can be accessed with length() and startIdx() respectively. llvm-svn: 316019
* Fix signed overflow detected by ubsanVitaly Buka2017-10-171-1/+1
| | | | | | This overflow does not affect algorithm, so just suppress it. llvm-svn: 316018
* [DAGCombine] Add SCALAR_TO_VECTOR undef handling to simplifyShuffleMask.Simon Pilgrim2017-10-171-2/+6
| | | | | | | | This allows us to simplify later visitVECTOR_SHUFFLE optimizations such as combineShuffleOfScalars. Noticed whilst working on D38696 llvm-svn: 316017
* [OpenCL] Restrict swizzle length check to OpenCL modeBruno Cardoso Lopes2017-10-173-2/+14
| | | | | | | | | | | Changes behavior introduced in r298369 to only error out on vector component invalid length access on OpenCL mode. Differential Revision: https://reviews.llvm.org/D38868 rdar://problem/33568748 llvm-svn: 316016
* Replace use of SmallVector::back + pop_back with pop_back_valErich Keane2017-10-171-2/+1
| | | | | | | | | I ran across an instance where the value was being loaded out via back, then immediately popped. Since pop_back_val is more efficient at this (it moves out), replace this instance. llvm-svn: 316015
* [llvm-special-case-list-fuzzer] Add fuzz target.Matt Morehouse2017-10-173-0/+53
| | | | | | | | | | | | | | | | Summary: Create a fuzzer for sanitizer blacklists. Patch by: hctim Reviewers: morehouse Reviewed By: morehouse Subscribers: llvm-commits, mgorny, kcc Differential Revision: https://review.llvm.org/D38981 llvm-svn: 316014
* Sema: use new `getNS{,U}IntegerType` for NS{,U}IntegerSaleem Abdulrasool2017-10-171-3/+3
| | | | | | | | Use the new helper methods to get the underlying type for NSUInteger, NSInteger types. This avoids spreading the knowledge of the underlying types in various sites. For non-LLP64 targets, this has no change. llvm-svn: 316013
* [ARM, AArch64] adjust tests trying to maintain their objective; NFCSanjay Patel2017-10-172-2/+2
| | | | | | | A smarter compiler will see that these might be better without a jump table if we're just using the constant values of the switch. llvm-svn: 316012
* [OPENMP] Fix capturing of boolean variables in debug mode.Alexey Bataev2017-10-172-6/+7
| | | | | | | | If the variables is boolean and we generating inner function with real types, the codegen may crash because of not loading boolean value from memory. llvm-svn: 316011
* lldb-server tests: Add support for testing debugserverPavel Labath2017-10-176-30/+83
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This adds support for running the lldb-server test suite (currently consisting of only one test) against the debugserver. Currently, the choice which binary to test is based on the host system. This will need to be replaced by something more elaborate if/when lldb-server starts supporting debugging on darwin. I need to make a couple of tweaks to the test client to work with debugserver: - debugserver has different command-line arguments - launching code adjusted to handle that - debugserver sends duplicate "medata" fields in the stop reply packet - adjusted stop-reply parsing code to handle that - debugserver replies to the k packet instead of just dropping the connection - stopping code adjusted, although we should probably consider aligning the behavior of the two stubs in this case Reviewers: jmajors, beanz Subscribers: srhines, mgorny, lldb-commits Differential Revision: https://reviews.llvm.org/D35311 llvm-svn: 316010
* fix shadowing warnings in new tests, try 2Eric Fiselier2017-10-171-2/+2
| | | | llvm-svn: 316009
* [SimplifyCFG] add test for part of PR34471 (switch squashing); NFCSanjay Patel2017-10-171-0/+43
| | | | llvm-svn: 316008
* Remove shared_pointer from NativeThreadProtocolPavel Labath2017-10-1711-293/+217
| | | | | | | | | | | | | | | | | | | Summary: The NativeThread class is useless without the containing process (and in some places it is already assuming the process is always around). This makes it clear that the NativeProcessProtocol is the object owning the threads, and makes the destruction order deterministic (first threads, then process). The NativeProcess is the only thing holding a thread unique_ptr, and methods that used to hand out thread shared pointers now return raw pointers or references. Reviewers: krytarowski, eugene Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D35618 llvm-svn: 316007
* [SimplifyCFG] update test to use auto-generated FileCheck asserts; NFCSanjay Patel2017-10-171-7/+14
| | | | llvm-svn: 316006
* Fix pthread_[gs]etname_np detectionSam McCall2017-10-171-0/+6
| | | | llvm-svn: 316005
* Bring back part of r315721.Rafael Espindola2017-10-172-22/+73
| | | | | | | | | | | | | | | | | | The original patch was reported to break a libcxx bot. Unfortunately I could not reproduce the issue and the bot log is not available anymore. This patch changes the handling of just lazy symbols. I will watch the bot and see it breaks. Original message: -------------------------------------------------------------- Handle shared and lazy symbol in the gnu hash construction. We were not considering those symbols undefined and they could end up in the end of the dynamic symbol table. -------------------------------------------------------------- llvm-svn: 316004
* [mips] Provide more detailed comment. NFCSimon Atanasyan2017-10-171-2/+8
| | | | llvm-svn: 316003
* [ELF] - Simplify. NFC.George Rimar2017-10-171-5/+4
| | | | llvm-svn: 316002
* [OpenMP] Implement omp_is_initial_device() as builtinJonas Hahnfeld2017-10-175-1/+45
| | | | | | | | This allows to return the static value that we know at compile time. Differential Revision: https://reviews.llvm.org/D38968 llvm-svn: 316001
* CodeGen: Fix invalid bitcasts for atomic builtinsYaxun Liu2017-10-172-41/+43
| | | | | | | | | | | | | Currently clang assumes the temporary variables emitted during codegen of atomic builtins have address space 0, which is not true for target triple amdgcn---amdgiz and causes invalid bitcasts. This patch fixes that. Differential Revision: https://reviews.llvm.org/D38966 llvm-svn: 316000
* [clang-rename] Rename enum.Haojian Wu2017-10-173-4/+230
| | | | | | | | | | | | | | | | Summary: * Add unit tests for renaming enum. * Support unscoped enum constants in expressions. Reviewers: ioeric Reviewed By: ioeric Subscribers: klimek, mgorny, cfe-commits Differential Revision: https://reviews.llvm.org/D38989 llvm-svn: 315999
* [X86][Broadwell] Added the broadwell cpu to the scheduling regression ↵Gadi Haber2017-10-1719-8/+4607
| | | | | | | | | | | | | tests.<NFC> NFC. Added the Broadwell cpu and the BROADWELL prefix to all the scheduling regression tests, as part of prepartion for a larger commit of adding all Broadwell scheduiling. Reviewers: RKSimon, zvi, aaboud Differential Revision: https://reviews.llvm.org/D38994 Change-Id: I54bc9065168844c107b1729fcdc1d311ce3ea0a9 llvm-svn: 315998
* fix shadowing warnings in new testsEric Fiselier2017-10-171-3/+3
| | | | llvm-svn: 315997
* [CMake][OpenMP] Customize default offloading archJonas Hahnfeld2017-10-174-21/+19
| | | | | | | | | For the shuffle instructions in reductions we need at least sm_30 but the user may want to customize the default architecture. Differential Revision: https://reviews.llvm.org/D38883 llvm-svn: 315996
* Refactor _LIBCPP_<LITTLE|BIG>_ENDIANEric Fiselier2017-10-172-35/+22
| | | | | | | | | | Previously this macro used 0/1 to indicate if it was set. This is unlike all other libc++ configuration macros which use ifdef/ifndef. This patch makes this macro consistent with everything else. llvm-svn: 315995
OpenPOWER on IntegriCloud