summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Clean up redundant isa<T> before getAs<T>. NFC.George Burgess IV2017-01-061-4/+2
| | | | llvm-svn: 291264
* Revert r291221.Rafael Espindola2017-01-062-1/+14
| | | | | | Should bring back the windows bots. llvm-svn: 291263
* [InstCombine] move and add tests for icmp + shl nsw; NFCSanjay Patel2017-01-062-63/+205
| | | | | | | | As discussed here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108749.html ...we should be able to better optimize this pattern. llvm-svn: 291262
* Fix test now that --reproduce takes a full filename.Rafael Espindola2017-01-061-1/+1
| | | | llvm-svn: 291261
* [OpenMP] fix typo - the standalone 'distribute' pragma should be 'teams ↵Kelvin Li2017-01-061-1/+2
| | | | | | distribute' pragma llvm-svn: 291260
* [builtins] Implement __floattitf() & __floatuntitf()Michal Gorny2017-01-065-0/+596
| | | | | | | | | | | | | | | | Implement the missing __floattitf() and __floatuntitf() functions, to convert 128-bit (unsigned) integers to quad-precision floating-point types. This is needed e.g. on AArch64 where 'long double' is a quad-precision type. The code is based on the existing code for __floattixf() and __floatuntixf(), updated to account for different bit field lengths of quad-precision float. The tests are also copied, with the rounding tests adjusted for longer significand. Differential Revision: https://reviews.llvm.org/D27898 llvm-svn: 291259
* [DWARF] Null out the debug locs of (loop invariant) instructions hoisted by ↵Wolfgang Pieb2017-01-062-0/+83
| | | | | | | | | | LICM in order to avoid jumpy line tables. Calls are left alone because they may be inlined. Differential Revision: https://reviews.llvm.org/D28390 llvm-svn: 291258
* Match backslashes in undef.s test on WindowsReid Kleckner2017-01-061-3/+3
| | | | llvm-svn: 291257
* Use %z for size_t and avoid deprecated string functionsReid Kleckner2017-01-061-4/+4
| | | | | | | | This usage of strcpy and snprintf was certainly safe, but using them sets off various deprecation and lint warnings. Easier to just write the belt and suspenders version. llvm-svn: 291256
* [CUDA] Add a host target triple to cuda-version-check.cuReid Kleckner2017-01-061-11/+11
| | | | | | | | It passes --sysroot for the Linux CUDA installation. To make this test pass when targetting Windows, you would need to pass --sysroot=Inputs/CUDA-windows. llvm-svn: 291255
* [AArch64] Reduce vector insert/extract cost for Falkor.Chad Rosier2017-01-062-0/+27
| | | | | | Differential Revision: https://reviews.llvm.org/D28403 llvm-svn: 291254
* Make ASTContext::getDeclAlign return the correct alignment forAkira Hatanaka2017-01-062-1/+11
| | | | | | | | | | | | | | | | | | | FunctionDecls. This commit silences an incorrect warning that is issued when a function pointer is cast to another function pointer type. The warning gets issued because alignments of the source and destination do not match in Sema::CheckCastAlign, which happens because ASTContext::getTypeInfoImpl and ASTContext::getDeclAlign return different values for functions (the former returns 4 while the latter returns 1). This should fix PR31558. rdar://problem/29533528 Differential Revision: https://reviews.llvm.org/D27478 llvm-svn: 291253
* Revert "Fix examples for recent shared_ptrification"David Blaikie2017-01-061-1/+1
| | | | | | | | | (should've rolled in to this revert of the CompilerInstance change in the first place... anyway) This reverts commit r291185. llvm-svn: 291252
* Revert "Fix for shared_ptrification in Clang"David Blaikie2017-01-062-4/+3
| | | | | | | | | The original commit caused an asan-detected memory leak in Clang. Reverting while I investigate. This reverts commit r291186. llvm-svn: 291251
* Revert "Fixes for Clang API changes to use std::shared_ptr"David Blaikie2017-01-061-17/+16
| | | | | | | | | The original Clang change caused a memory leak detected by asan. Reverting while I investigate. This reverts commit r291200. llvm-svn: 291250
* Revert "IntrusiveRefCntPtr -> std::shared_ptr for CompilerInvocationBase and ↵David Blaikie2017-01-0624-142/+147
| | | | | | | | | | CodeCompleteConsumer" Caused a memory leak reported by asan. Reverting while I investigate. This reverts commit r291184. llvm-svn: 291249
* [X86][SSE] Pass float domain flag to shuffle combine match functions. NFCI.Simon Pilgrim2017-01-061-13/+13
| | | | | | Early step towards ignoring domain above a certain shuffle depth. llvm-svn: 291248
* Fix some typos in commentsTobias Grosser2017-01-062-11/+11
| | | | llvm-svn: 291247
* [AMDGPU] Remove extra semicolon. NFCKonstantin Zhuravlyov2017-01-061-1/+1
| | | | llvm-svn: 291246
* [AMDGPU] Do not emit .AMDGPU.config section for amdhsaKonstantin Zhuravlyov2017-01-063-8/+9
| | | | | | Differential Revision: https://reviews.llvm.org/D27732 llvm-svn: 291245
* [X86][SSE] Simplify float domain requirement in unary shuffle matching.Simon Pilgrim2017-01-061-2/+1
| | | | | | The AVX1-only limit is never actually required in matchUnaryVectorShuffle llvm-svn: 291244
* [OpenCL] Re-enable supported core extensions based on opencl version when ↵Konstantin Zhuravlyov2017-01-062-2/+17
| | | | | | | | disabling all extensions using pragma Differential Revision: https://reviews.llvm.org/D28257 llvm-svn: 291243
* [X86][AVX] Regenerate shuffle 128-bit tests.Simon Pilgrim2017-01-063-195/+89
| | | | | | The EVEX -> VEX fix means that AVX/AVX512 code is more likely the same now. llvm-svn: 291242
* [X86][AVX] Regenerate tzcnt tests.Simon Pilgrim2017-01-061-343/+82
| | | | | | The EVEX -> VEX fix means that AVX/AVX512 code is more likely the same now. llvm-svn: 291241
* Remove trailing whitespace. NFCI.Simon Pilgrim2017-01-061-3/+3
| | | | llvm-svn: 291240
* [X86] Add X86Subtarget argument. NFCI.Simon Pilgrim2017-01-061-8/+12
| | | | | | All callers of getTargetVShiftNode have access to X86Subtarget already so pass it along instead of re-extracting it. llvm-svn: 291239
* [ASan] Make ASan instrument variable-masked loads and storesFilipe Cabecinhas2017-01-062-43/+129
| | | | | | | | | | | | Summary: Previously we only supported constant-masked loads and stores. Reviewers: kcc, RKSimon, pgousseau, gbedwell, vitalybuka Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D28370 llvm-svn: 291238
* [ubsan] Minimize size of data for type_mismatch (Redo of D19668)Filipe Cabecinhas2017-01-062-9/+10
| | | | | | | | | | | | Summary: This is the compiler-rt side of D28242. Reviewers: kcc, vitalybuka, pgousseau, gbedwell Subscribers: kubabrecka, llvm-commits Differential Revision: https://reviews.llvm.org/D28244 llvm-svn: 291237
* [ubsan] Minimize size of data for type_mismatch (Redo of D19667)Filipe Cabecinhas2017-01-065-20/+21
| | | | | | | | | | | | | | | | | | Summary: This patch makes the type_mismatch static data 7 bytes smaller (and it ends up being 16 bytes smaller due to alignment restrictions, at least on some x86-64 environments). It revs up the type_mismatch handler version since we're breaking binary compatibility. I will soon post a patch for the compiler-rt side. Reviewers: rsmith, kcc, vitalybuka, pgousseau, gbedwell Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D28242 llvm-svn: 291236
* [globalisel] Stop requiring -debug/-debug-only=registerbankinfo for assertions.Daniel Sanders2017-01-061-6/+7
| | | | | | | | | | | | | | | | | | | | | Summary: I've noticed that these assertions don't trigger when the condition is false. The problem is that the DEBUG(x) macro only executes x when the pass is emitting debug output via the -debug and -debug-only=registerbankinfo command line arguments. Debug builds should always execute the assertions so use '#ifndef NDEBUG' instead. Also removed an assertion that is only true the first time it's tested. <Target>RegisterBankInfo's constructor will re-use register banks causing them to be valid on subsequent tests. That assertion will fail on the first test too in the near future. Reviewers: t.p.northover, ab, rovka, qcolombet Subscribers: dberris, llvm-commits, kristof.beyls Differential Revision: https://reviews.llvm.org/D28358 llvm-svn: 291235
* Another windows build fixPavel Labath2017-01-061-0/+1
| | | | llvm-svn: 291234
* Attempt to fix windows build for r291198Pavel Labath2017-01-061-0/+1
| | | | llvm-svn: 291233
* [CodeCompletion] Block property setters: Use dynamic priority heuristicAlex Lorenz2017-01-063-12/+24
| | | | | | | | | | | | | | Now when completing blocks properties that return void the block call completion result shows up before the setter, otherwise the setter completion shows up before the block call completion. We normally want to use the result of the block call, so one typically wouldn't call a block that returns a non-void type in a standalone statement. rdar://28846153 Differential Revision: https://reviews.llvm.org/D26034 llvm-svn: 291232
* [ObjC] The declarator for a block literal should be a definitionAlex Lorenz2017-01-063-3/+6
| | | | | | | | | | | This change avoids the -Wstrict-prototypes warning for block literals with an empty argument list or without argument lists. rdar://15060615 Differential Revision: https://reviews.llvm.org/D28296 llvm-svn: 291231
* Constify UsingPackDecl::getInstantiatedFromUsingDecl(), NFC.Yaron Keren2017-01-061-1/+1
| | | | llvm-svn: 291230
* [CostModel][X86] Fix 512-bit SDIV/UDIV 'big' costs.Simon Pilgrim2017-01-062-20/+20
| | | | | | Set the costs on the lowest target that supports the type. llvm-svn: 291229
* [CostModel][X86] Add SDIV/UDIV cost tests for a wider range of targetsSimon Pilgrim2017-01-061-18/+50
| | | | | | Added a test demonstrating bug in AVX512 division costs llvm-svn: 291228
* Move test input to directory called Inputs.Daniel Jasper2017-01-063-1/+1
| | | | | | It is a common convention that our internal test runner depends upon. llvm-svn: 291227
* Fix clang build for r291198Pavel Labath2017-01-061-1/+1
| | | | | | | | | Older clangs (<=3.6) complain about a redefinition when we try to specialize a templace function declared with = delete. Instead, I just don't define the function body, which will trigger a linker error if someone tries to use an unknown function. llvm-svn: 291226
* Revert "XFAIL an lldb-mi test"Pavel Labath2017-01-061-2/+0
| | | | | | The clang bug is fixed now. This reverts commit r291100. llvm-svn: 291225
* Unbreak Darwin buildbots.Rui Ueyama2017-01-061-7/+7
| | | | llvm-svn: 291224
* Rename lld::stringize -> lld::toString.Rui Ueyama2017-01-065-5/+5
| | | | llvm-svn: 291223
* Merge elf::toString and coff::toString.Rui Ueyama2017-01-0612-36/+34
| | | | | | The two overloaded functions hid each other. This patch merges them. llvm-svn: 291222
* Remove lld::convertToUnixPathSeparator.Rui Ueyama2017-01-062-14/+1
| | | | | | | Now TarWriter takes care of path separator conversion, so we don't need to handle that in LLD. llvm-svn: 291221
* Consolidate file handle usage in Editline.cppPavel Labath2017-01-062-10/+39
| | | | | | | | | | | | | | | | | | | | Summary: To implement wide character reading, editline was mixing FILE*-based access with a Connection-based one (plus it did some selects on the raw FD), which is very fragile. Here, I replace it with one which uses only a Connection-based reads. The code is somewhat longer as I had to read characters one by one to detect the end of the multibyte sequence. I've verified that international characters still work in lldb command line on OSX. Reviewers: clayborg, zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D28356 llvm-svn: 291220
* Use \ as the path separator on Windows.Rui Ueyama2017-01-061-2/+1
| | | | | | | | Previously, when we printed out a path obtained from DWARF debug info, we replaced \ with / on Windows. But that doesn't make sense. We should respect the system's path separator. llvm-svn: 291219
* [llvm-config] Add --cmakedir to obtain CMake module locationMichal Gorny2017-01-061-1/+9
| | | | | | | | | | | | Add a --cmakedir option to llvm-config that returns the correct path to built/installed CMake modules (i.e. lib/cmake/llvm). This is mostly intended as a convenience option for stand-alone builds of other LLVM projects that frequently reconstruct LLVM_CMAKE_PATH after querying llvm-config. Differential Revision: https://reviews.llvm.org/D26894 llvm-svn: 291218
* [cmake] Disable appending -msse4.2 flag implicitlyMichal Gorny2017-01-062-2/+0
| | | | | | | | | | | | | | | | | | | | | | | Disable the code appending -msse4.2 flag implicitly when the compiler supports it. The compiler support for this flags do not indicate that the underlying CPU will support SSE4.2, and passing it may result in SSE4.2 code being emitted *implicitly*. If the target platform supports SSE4.2 appropriately, the relevant bits should be already enabled via -march= or equivalent. In this case passing -msse4.2 is redundant. If a runtime detection is desired (which seems to be a case with SCUDO), then (as gcc manpage points out) the specific SSE4.2 needs to be isolated into a separate file, the -msse4.2 flag can be forced only for that file and the function defined in that file can only be called when the CPU is determined to support SSE4.2. This fixes SIGILL on SCUDO when it is compiled using gcc-5.4. Differential Revision: https://reviews.llvm.org/D28304 llvm-svn: 291217
* [Orc][RPC] Fix an obvious locking-order bug in RawByteChannel::startSendMessage.Lang Hames2017-01-061-1/+1
| | | | | | | | | | | The lock needs to be acquired before the data is sent, not afterwards. This think-o slipped in during the refactor in r286620, but went unnoticed as the resulting bug only manifests in multi-threaded clients (of which there are none in-tree). No unit test as the bug depends on thread scheduling. llvm-svn: 291216
* TarWriter: Emit PAX headers only when needed.Rui Ueyama2017-01-061-23/+20
| | | | | | | | We use PAX headers to store long filenames (>= 100 bytes). It is not needed to emit PAX headers if filenames fit in the Ustar header. This patch implements that optimization. llvm-svn: 291215
OpenPOWER on IntegriCloud