summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* 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
* [AVX-512] Add EXTRACT_SUBVECTOR support to combineBitcastForMaskedOp.Craig Topper2017-01-062-16/+37
| | | | llvm-svn: 291214
* [AVX-512] Add more masked vector extract test cases with and without a ↵Craig Topper2017-01-061-0/+450
| | | | | | | | bitcast between the select. The ones with the bitcast need additional work to fold the mask operation properly. This will be fixed in a future commit. llvm-svn: 291213
* Attempt to unbreak buildbots.Rui Ueyama2017-01-061-1/+1
| | | | llvm-svn: 291212
* [SelectionDAG] Rework lowerRangeToAssertZExtDavid Majnemer2017-01-061-6/+11
| | | | | | Utilize ConstantRange to make it easier to interpret range metadata. llvm-svn: 291211
* Use TarWriter to create tar archives instead of cpio.Rui Ueyama2017-01-0616-150/+68
| | | | | | | | | | This is how we use TarWriter in LLD. Now LLD does not append a file extension, so you need to pass `--reproduce foo.tar` instead of `--reproduce foo`. Differential Revision: https://reviews.llvm.org/D28103 llvm-svn: 291210
* Add a class to create a tar archive file.Rui Ueyama2017-01-063-0/+202
| | | | | | | | | | | | | | In LLD, we create cpio archive files for --reproduce command. cpio was not a bad choice because it is very easy to create, but it was sometimes hard to use because people are not familiar with cpio command. I noticed that creating a tar archive isn't as hard as I thought. So I implemented it in this patch. Differential Revision: https://reviews.llvm.org/D28091 llvm-svn: 291209
* CodeGen: address post commit review comments for r291123Saleem Abdulrasool2017-01-063-13/+0
| | | | | | | | | | | This test would force the execution of the backend. However, the backend already has a test for this. Effectively, this was trying to test that an API call was made properly. We do not have a good way to really test this. The test itself tested very little. Addresses post-commit review comments from Eric Christopher. llvm-svn: 291208
* Revert "Use _Unwind_Backtrace on Apple platforms."Bob Wilson2017-01-061-1/+1
| | | | | | | | | | | This reverts commit 63165f6ae3bac1623be36d4b3ce63afa1d51a30a. After making this change, I discovered that _Unwind_Backtrace is unable to unwind past a signal handler after an assertion failure. I filed a bug report about that issue in rdar://29866587 but even if we get a fix soon, it will be awhile before it get released. llvm-svn: 291207
OpenPOWER on IntegriCloud