summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [LVI] Sink a couple more cache manipulation routines into the cache itself ↵Philip Reames2016-09-121-36/+45
| | | | | | | | [NFCI] The only interesting bit here is the refactor of the handle callback and even that's pretty straight-forward. llvm-svn: 281267
* [LVI] Abstract out the actual cache logic [NFCI]Philip Reames2016-09-121-89/+97
| | | | | | Seperate the caching logic from the implementation of the lazy analysis. For the moment, the lazy analysis impl has a is-a relationship with the cache; this will change to a has-a relationship shortly. This was done as two steps merely to keep the changes simple and the diff understandable. llvm-svn: 281266
* Add comments.Rui Ueyama2016-09-122-0/+7
| | | | llvm-svn: 281265
* config: Use _LIBCPP_TYPE_VIS_ONLY with enum classShoaib Meenai2016-09-121-1/+1
| | | | | | | | | | | An enum class has associated type info. In the Microsoft ABI, type info is emitted in the COMDAT section and isn't exported, so clang rightfully complains about __declspec(dllexport) being unused for an enum class. On other platforms, we still want to export the type info. Differential Revision: https://reviews.llvm.org/D24065 llvm-svn: 281264
* Revert r281215, it caused PR30358.Nico Weber2016-09-129-232/+26
| | | | llvm-svn: 281263
* attempt to unbreak build after r281254Nico Weber2016-09-121-0/+1
| | | | llvm-svn: 281262
* CodeGen: use some range-based for loopsSaleem Abdulrasool2016-09-121-14/+10
| | | | | | | Use range-based for loops to simplify the logic. Add an explicit check for MachO as the inline asm uses MachO specific directives. llvm-svn: 281261
* [MachO] Factor out a fair amount of duplicated code. NFCI.Davide Italiano2016-09-121-26/+14
| | | | llvm-svn: 281260
* Add a couple of test files missed in r281258.Richard Smith2016-09-122-0/+10
| | | | llvm-svn: 281259
* [modules] When we merge two definitions of a function, mark the retainedRichard Smith2016-09-126-24/+62
| | | | | | | definition as visible in the discarded definition's module, as we do for other kinds of definition. llvm-svn: 281258
* [ORC] Add missing <thread> header to RPCSerialization.h.Lang Hames2016-09-121-0/+1
| | | | llvm-svn: 281257
* [Cmake] Use Cmake's default RPATH for unittest.Davide Italiano2016-09-121-0/+2
| | | | | | | | | | | | | Similarly to what was done in r280791 for llvm/. This should fix a bunch of failures I saw while trying a BUILD_SHARED_LIBS build on MacOS. Still there are some failures, but this is a step forward. Thanks a lot to Chris Bieneman for the suggested fix (in PR30345) llvm-svn: 281256
* [sanitizer] replace CHECK with CHECK_XY in two places for better diagnosticsKostya Serebryany2016-09-121-2/+2
| | | | llvm-svn: 281255
* [ORC] Replace the serialize/deserialize function pair with a SerializationTraitsLang Hames2016-09-124-167/+360
| | | | | | | | | | | class. SerializationTraits provides serialize and deserialize methods corresponding to the earlier functions, but also provides a name for the type. In future, this name will be used to render function signatures as strings, which will in turn be used to negotiate and verify API support between RPC clients and servers. llvm-svn: 281254
* Fix the bug introduced in r281252.Dehao Chen2016-09-121-1/+1
| | | | llvm-svn: 281253
* Lower consecutive select instructions correctly.Dehao Chen2016-09-122-23/+119
| | | | | | | | | | | | Summary: If consecutive select instructions are lowered separately in CGP, it will introduce redundant condition check and branches that cannot be removed by later optimization phases. This patch lowers all consecutive select instructions at the same to to avoid inefficent code as demonstrated in https://llvm.org/bugs/show_bug.cgi?id=29095 Reviewers: davidxl Subscribers: vsk, llvm-commits Differential Revision: https://reviews.llvm.org/D24147 llvm-svn: 281252
* xfail TestQueues.py and TestDarwinLogFilterMatchMessage.pyTodd Fiala2016-09-122-0/+9
| | | | | | | | | | | | | | It looks like the message-content-retrieval aspect of DarwinLog support is flaky, not just the regex match against it. Slightly less frequently than the regex matching, I am seeing the direct string-match variant of log-message-content matching also fail. Tracked by: llvm.org/pr30299 rdar://28237450 llvm-svn: 281251
* config: Fix typo in commentShoaib Meenai2016-09-121-1/+1
| | | | | | Testing commit access. NFC. llvm-svn: 281250
* [MC] Defer asm errors to post-statement failureNirav Dave2016-09-1216-830/+517
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow errors to be deferred and emitted as part of clean up to simplify and shorten Assembly parser code. This will allow error messages to be emitted in helper functions and be modified by the caller which has better context. As part of this many minor cleanups to the Parser: * Unify parser cleanup on error * Add Workaround for incorrect return values in ParseDirective instances * Tighten checks on error-signifying return values for parser functions and fix in-tree TargetParsers to be more consistent with the changes. * Fix AArch64 test cases checking for spurious error messages that are now fixed. These changes should be backwards compatible with current Target Parsers so long as the error status are correctly returned in appropriate functions. Reviewers: rnk, majnemer Subscribers: aemerson, jyknight, llvm-commits Differential Revision: https://reviews.llvm.org/D24047 llvm-svn: 281249
* [InstCombine] add test for PR30327Sanjay Patel2016-09-121-0/+14
| | | | llvm-svn: 281248
* [InstCombine] regenerate checksSanjay Patel2016-09-121-4/+7
| | | | llvm-svn: 281247
* AVX-512: Added a test for -O0 mode. NFC.Elena Demikhovsky2016-09-121-0/+52
| | | | llvm-svn: 281246
* Fix bitmask upper bounds checkJonathan Peyton2016-09-123-25/+18
| | | | | | | | | | | | Rather than checking KMP_CPU_SETSIZE, which doesn't exist when using Hwloc, we use the get_max_proc() function which can vary based on the operating system. For example on Windows with multiple processor groups, it might be the case that the highest bit possible in the bitmask is not equal to the number of hardware threads on the machine but something higher than that. Differential Revision: https://reviews.llvm.org/D24206 llvm-svn: 281245
* AVX-512: Simplified masked_gather_scatter test. NFC.Elena Demikhovsky2016-09-121-183/+6
| | | | llvm-svn: 281244
* fix Xcode build after r281226Todd Fiala2016-09-121-1/+1
| | | | llvm-svn: 281243
* Remove -fvisibility=hidden and FORCE_STATIC.Michael Kruse2016-09-122-21/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | The flag -fvisibility=hidden flag was used for the integrated Integer Set Library (and PPCG) to keep their definitions local to Polly. The motivation was the be loaded into a DragonEgg-powered GCC, where GCC might itself use ISL for its Graphite extension. The symbols of Polly's ISL and GCC's ISL would clash. The DragonEgg project is not actively developed anymore, but Polly's unittests need to call ISL functions to set up a testing environment. Unfortunately, the -fvisibility=hidden flag means that the ISL symbols are not available to the gtest executable as it resides outside of libPolly when linked dynamically. Currently, CMake links a second copy of ISL into the unittests which leads to subtle bugs. What got observed is that two isl_ids for isl_id_none exist, one for each library instance. Because isl_id's are compared by address, isl_id_none could happen to be different from isl_id_none, depending on which library instance set the address and does the comparison. Also remove the FORCE_STATIC flag which was introduced to keep the ISL symbols visible inside the same libPolly shared object, even when build with BUILD_SHARED_LIBS. Differential Revision: https://reviews.llvm.org/D24460 llvm-svn: 281242
* Diagnostics reference: "error:" should be red, not orange.Richard Smith2016-09-122-2/+2
| | | | llvm-svn: 281241
* Fix test failure in r281232Hemant Kulkarni2016-09-122-0/+0
| | | | llvm-svn: 281240
* [SE] Clean up device and host memory slicesJason Henline2016-09-124-22/+35
| | | | | | | | | | | | | | | | | | | Summary: * Add LLVM_ATTRIBUTE_UNUSED_RESULT used to slicing methods in order to emphasize that the slicing is not done in place. * Change device memory slice function name from `drop_front` to `slice` in order to match the naming convention of `llvm::ArrayRef` and host memory slice. * Change the parameter names of host memory slice functions to `DropCount` and `TakeCount` to match device memory slice declarations. Reviewers: jlebar Subscribers: jprice, parallel_libs-commits Differential Revision: https://reviews.llvm.org/D24464 llvm-svn: 281239
* [MCJIT] Fix some inconsistent handling of name mangling inside MCJIT.Lang Hames2016-09-122-12/+21
| | | | | | | | | | | This patch moves symbol mangling from findSymbol to getSymbolAddress. The findSymbol, findExistingSymbol and findModuleForSymbol methods now always take a mangled name, allowing the 'demangle-and-retry' cruft to be removed from findSymbol. See http://llvm.org/PR28699 for details. Patch by James Holderness. Thanks very much James! llvm-svn: 281238
* [asan] Ease dealing with tagged enum ErrorDescription with some macros.Filipe Cabecinhas2016-09-121-32/+27
| | | | | | | | | | | | | | | Summary: Added a macro to enumerate the (error name, error member name) pairs. This way, when adding an error, we only need to add the pair to one place (plus add its implementation, or course). Reviewers: kcc, samsonov Subscribers: llvm-commits, kubabrecka Differential Revision: https://reviews.llvm.org/D23875 llvm-svn: 281237
* [asan] Cleanup: Move tid into ErrorBase, add const to BufferedStackTrace, be ↵Filipe Cabecinhas2016-09-124-28/+27
| | | | | | | | | | | | | | | | consistent in constructor arguments and member order. Summary: As mentioned in D24394, I'm moving tid to ErrorBase, since basically all errors need it. Also mentioned in the same review are other cleanups like adding const to BufferedStackTrace and make sure constructor orders are consistent. Reviewers: vitalybuka, kcc, eugenis Subscribers: llvm-commits, kubabrecka Differential Revision: https://reviews.llvm.org/D24455 llvm-svn: 281236
* Store the size of the outermost dimension in case of newly created arrays ↵Roman Gareev2016-09-1213-50/+76
| | | | | | | | | | | | | that require memory allocation. We do not need the size of the outermost dimension in most cases, but if we allocate memory for newly created arrays, that size is needed. Reviewed-by: Michael Kruse <llvm@meinersbur.de> Differential Revision: https://reviews.llvm.org/D23991 llvm-svn: 281234
* llvm-size: Add --totals optionHemant Kulkarni2016-09-122-3/+41
| | | | | | Differential Revision: https://reviews.llvm.org/D24308 llvm-svn: 281233
* llvm-objdump: Add --start-address and --stop-address optionsHemant Kulkarni2016-09-123-4/+143
| | | | | | Differential Revision: https://reviews.llvm.org/D24160 llvm-svn: 281232
* [InstCombine] use m_APInt to allow icmp X, C folds for splat constant vectorsSanjay Patel2016-09-123-7/+6
| | | | | | isSignBitCheck could be changed to take a pointer param to avoid the 'UnusedBit' ugliness. llvm-svn: 281231
* AMDGPU: Do not clobber SCC in SIWholeQuadModeNicolai Haehnle2016-09-123-75/+247
| | | | | | | | | | Reviewers: arsenm, tstellarAMD, mareko Subscribers: arsenm, llvm-commits, kzhuravl Differential Revision: http://reviews.llvm.org/D22198 llvm-svn: 281230
* [GlobalISel] Fix mismatched "<..)" in intrinsic MO printing. NFC.Ahmed Bougacha2016-09-121-2/+2
| | | | llvm-svn: 281229
* Revert "[ARM] Promote small global constants to constant pools"James Molloy2016-09-125-222/+1
| | | | | | This reverts commit r281213. It made a bot go bang: http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15-full/builds/14625 llvm-svn: 281228
* Trivial documentation fix regarding Obj-C ARC ↵Jonathan Roelofs2016-09-121-2/+2
| | | | | | | | | | | | | objc_arc_weak_reference_unavailable Fixed incorrect docs that referred to: objc_arc_weak_unavailable when it should be: objc_arc_weak_reference_unavailable Patch by: Sean McBride! llvm-svn: 281227
* Move StdStringExtractor to tools/debugserverPavel Labath2016-09-126-7/+4
| | | | | | | | The class is only used in the debugserver. The rest of lldb has the StringExtractor class. Xcode project will need to be updated after this. llvm-svn: 281226
* [SE] RegisteredHostMemory for async device copiesJason Henline2016-09-1211-302/+393
| | | | | | | | | | | | | | | | | | | Summary: Improve the error-prone interface that allows users to pass host pointers that haven't been registered to asynchronous copy methods. In CUDA, this is an extremely easy error to make, and instead of failing at runtime, it succeeds and gives the right answers by turning the async copy into a sync copy. So, you silently get a huge performance degradation if you misuse the old interface. This new interface should prevent that. Reviewers: jlebar Subscribers: jprice, beanz, parallel_libs-commits Differential Revision: https://reviews.llvm.org/D24353 llvm-svn: 281225
* [BranchFolding] Unique added live-ins after hoisting code.Ahmed Bougacha2016-09-122-1/+8
| | | | | | We're not supposed to have duplicate live-ins. llvm-svn: 281224
* [X86] Copy imp-uses when folding tailcall into conditional branch.Ahmed Bougacha2016-09-122-1/+85
| | | | | | | | | | | r280832 added 32-bit support for emitting conditional tail-calls, but dropped imp-used parameter registers. This went unnoticed until r281113, which added 64-bit support, as this is only exposed with parameter passing via registers. Don't drop the imp-used parameters. llvm-svn: 281223
* Simplify handling of /DISCARD/. NFC.Rafael Espindola2016-09-122-11/+8
| | | | llvm-svn: 281222
* [FunctionAttrs] Don't try to infer returned if it is already on an argumentDavid Majnemer2016-09-122-0/+17
| | | | | | | | | | | Trying to infer the 'returned' attribute if an argument is already 'returned' can lead to verification failure: inference might determine that a different argument is passed through which would result in two different arguments marked as 'returned'. This fixes PR30350. llvm-svn: 281221
* fix formatting; NFCSanjay Patel2016-09-121-14/+13
| | | | llvm-svn: 281220
* [InstCombine] add tests to show missing vector foldsSanjay Patel2016-09-122-1/+29
| | | | llvm-svn: 281219
* add select i1 test, reproduser pr30249.Igor Breger2016-09-121-0/+12
| | | | llvm-svn: 281218
* [InstCombine] add helper function for foldICmpUsingKnownBits; NFCISanjay Patel2016-09-122-259/+279
| | | | llvm-svn: 281217
OpenPOWER on IntegriCloud