summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Simplify exclusion of nested classes from extern template instantiation, NFCReid Kleckner2019-04-291-8/+7
| | | | | | | | | | | | | | | | | | | | | Summary: This simplifies three checks for MS ABI, Win Itanium, or Win GNU to just "is Windows". The question remains, however, if this is really the correct thing to do. We could, for example, only not consider inner classes to be externally available if the outer class has a dllexport annotation. However, I will leave that as future work. Reviewers: hans, mstorsjo Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D61278 llvm-svn: 359507
* When skipping code at the start of a file during PCH use, Preprocessor::LexMike Rice2019-04-294-2/+48
| | | | | | | | | | | | | | is not used since it consumes all preprocessor directives until it returns a real token. Using the specific Lexer (i.e. CurLexer->Lex) makes it possible to stop skipping after an #include or #pragma hdrstop. Previously the skipping code was only handling CurLexer, now all will be handled correctly. Fixes: llvm.org/PR41585 Differential Revision: https://reviews.llvm.org/D61217 llvm-svn: 359506
* [WebAssembly] Define the signature for __stack_chk_failDan Gohman2019-04-292-1/+39
| | | | | | | | | | | | | | | The WebAssembly backend needs to know the signatures of all runtime libcall functions. This adds the signature for __stack_chk_fail which was previously missing. Also, make the error message for a missing libcall include the name of the function. Differential Revision: https://reviews.llvm.org/D59521 Reviewed By: sbc100 llvm-svn: 359505
* [PowerPC] Try harder to avoid load/move-to VSR for partial vector loadsRoland Froese2019-04-292-37/+172
| | | | | | | | | | Change the PPCISelLowering.cpp function that decides to avoid update form in favor of partial vector loads to know about newer load types and to not be confused by the chain operand. Differential Revision: https://reviews.llvm.org/D60102 llvm-svn: 359504
* [lit] Check for the psutil module when setting a timeoutJonas Devlieghere2019-04-291-2/+8
| | | | | | | | Apparently setting the per-test-timeout and not having the psutil package constitutes to a fatal error. So only set the timeout when the module is available. llvm-svn: 359503
* [ASTImporter] Add an ImportImpl method to allow customizing Import behavior.Raphael Isemann2019-04-293-13/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: We are currently implementing support in LLDB that reconstructs the STL templates from the target program in the expression evaluator. This reconstruction happens during the import process from our debug info AST into the expression evaluation AST, which means we need a way to intercept the ASTImporter import process. This patch adds an protected ImportImpl method that we can overwrite in LLDB to implement our special importing logic (which is essentially just looking into a C++ module that is attached to the target context). Because ImportImpl has to call MapImported/AddToLookup for the decls it creates, this patch also exposes those via a new unified method and checks that we call it when importing decls. Reviewers: martong, balazske, a.sidorin, shafik, a_sidorin Reviewed By: martong, a_sidorin Subscribers: rnkovacs, cfe-commits, lldb-commits, aprantl Tags: #clang Differential Revision: https://reviews.llvm.org/D59485 llvm-svn: 359502
* [GlobalISel][AArch64] Select llvm.aarch64.crypto.sha1hJessica Paquette2019-04-292-5/+70
| | | | | | | | | | This was falling back and gives us a reason to create a selectIntrinsic function which we would need eventually anyway. Update arm64-crypto.ll to show that we correctly select it. Also factor out the code for finding an intrinsic ID. llvm-svn: 359501
* Fix FIXME added in r359339Reid Kleckner2019-04-292-15/+12
| | | | | | | | | We have windows.h in asan_win.cc, so we can just use the correct prototypes for these EH-related interceptors without worrying. Also fix an unused variable warning while I'm here. llvm-svn: 359500
* Pacify sanitizer lint script after r359498Reid Kleckner2019-04-291-1/+0
| | | | llvm-svn: 359499
* [AddressSanitizer] [Windows] Fix HeapReAlloc and _recalloc bugs in ↵Matthew G McGovern2019-04-293-14/+101
| | | | | | | | | | | asan_malloc_win.cc HeapReAlloc should allow for 0 sized reallocations without freeing the memory block provided by the user. _recalloc previously did not zero new memory after reallocation. https://reviews.llvm.org/D61268 llvm-svn: 359498
* [UpdateTestChecks] Allow Lbegin_func without a leading periodMartin Storsjo2019-04-291-1/+1
| | | | | | | | | | | On mingw/i686, local labels don't start with a leading period. Also escape the leading period, as it previously could match any char. Differential Revision: https://reviews.llvm.org/D61254 llvm-svn: 359497
* [X86] Run CFIInstrInserter on Windows if Dwarf is usedMartin Storsjo2019-04-292-1/+169
| | | | | | | | | | | This is necessary since SVN r330706, as tail merging can include CFI instructions since then. This fixes PR40322 and PR40012. Differential Revision: https://reviews.llvm.org/D61252 llvm-svn: 359496
* Fix one more case of passing options with too many dashes.Don Hinton2019-04-291-1/+1
| | | | llvm-svn: 359495
* [gn] Use label_name rather than target_output_name for objectsPetr Hosek2019-04-291-5/+5
| | | | | | | | | | | | | | Multiple targets in the same output directory can use the same target_output_name. The typical example of that is having a shared and a static library of the same, e.g. libc++.so and libc++.a. When that's the case, the object files produced for each target are going to conflict. Using the label_name avoids this conflict since labels are guaranteed to be unique within a single BUILD.gn file which corresponds to a single output directory. Differential Revision: https://reviews.llvm.org/D60329 llvm-svn: 359494
* Fix string UAF in new FileCheck testReid Kleckner2019-04-291-1/+1
| | | | llvm-svn: 359493
* [lit] Fix the timeout.Jonas Devlieghere2019-04-292-1/+3
| | | | | | | | The timeout wasn't working because it's a property of the lit configuration, not of the configuration in lit.site.cfg. This sets the property for the correct object. llvm-svn: 359492
* [X86][SSE] isHorizontalBinOp - add support for target shufflesSimon Pilgrim2019-04-295-73/+99
| | | | | | | | | | | | Add target shuffle decoding to isHorizontalBinOp as well as ISD::VECTOR_SHUFFLE support. This does mean we can go through bitcasts so we need to bitcast the extracted args to ensure they are the correct type Fixes PR39936 and should help with PR39920/PR39921 Differential Revision: https://reviews.llvm.org/D61245 llvm-svn: 359491
* [CMake] Fix subtle CMake bugAlex Langford2019-04-294-6/+6
| | | | | | | | CMake specifies that the DEPENDS field of add_custom_target is for files and output of add_custom_command. In order to add a target dependency, add_dependencies should be used. llvm-svn: 359490
* [clangd][xpc] Fix XPC unittestsJan Korous2019-04-292-1/+3
| | | | | | | | | Fix build after recent changes in clangd tests & add xpc unittests to check-clangd target. Differential Revision: https://reviews.llvm.org/D61271 llvm-svn: 359489
* [llvm-pdbutil] FunctionDumper::dump(PDBSymbolTypeFunctionArg) - fix null ↵Simon Pilgrim2019-04-291-2/+2
| | | | | | | | dereference warning Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359488
* [test] Disable x86-64-gp-write on DarwinJonas Devlieghere2019-04-291-0/+1
| | | | llvm-svn: 359487
* computePolynomialFromPointer - add missing early-out return for non-pointer ↵Simon Pilgrim2019-04-291-0/+1
| | | | | | | | types. Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359486
* [InstCombine] reduce code duplication; NFCSanjay Patel2019-04-291-5/+7
| | | | | | | | | | Follow-up to: rL359482 Avoid this potential problem throughout by giving the type a name and verifying the assumption that both operands are the same type. llvm-svn: 359485
* Fix additional cases of more that two dashes for options in tests.Don Hinton2019-04-292-5/+5
| | | | llvm-svn: 359484
* Remove duplicate line. NFCI.Simon Pilgrim2019-04-291-1/+0
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359483
* [InstCombine] visitFCmpInst - appease copy+paste pattern warning. NFCI.Simon Pilgrim2019-04-291-1/+1
| | | | | | | | PVS Studio's copy+paste recognizer was seeing this as a typo, technically Op0/Op1 in a fcmp should always be the same type, but we might as well avoid the issue. Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359482
* [globalisel] Improve Legalizer debug outputDaniel Sanders2019-04-293-6/+63
| | | | | | | | | | * LegalizeAction should be printed by name rather than number * Newly created instructions are incomplete at the point the observer first sees them. They are therefore recorded in a small vector and printed just before the legalizer moves on to another instruction. By this point, the instruction must be complete. llvm-svn: 359481
* [CommandLine] Don't allow unlimitted dashes for options. Part 1 or 5Don Hinton2019-04-293-6/+6
| | | | | | | | | | | | | | | | | | | Summary: Prior to this patch, the CommandLine parser would strip an unlimitted number of dashes from options. This patch limits it to two. Reviewers: rnk Reviewed By: rnk Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61229 llvm-svn: 359480
* [X86] scaleShuffleMask - avoid potential signed overflow warning.Simon Pilgrim2019-04-291-3/+3
| | | | | | | | | | Use size_t assignment to prevent a bad explicit type conversion warning. Given the typical size of shuffle masks this was never going to happen, but this at least stops the warning. Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359479
* [TextAPI] Fix Symbol::dump which was failing to append the SymbolKind string.Simon Pilgrim2019-04-291-4/+4
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359478
* [llvm-mca][x86] Fix MMX PMOVMSKB testSimon Pilgrim2019-04-2911-33/+33
| | | | | | This is defined as part of SSE1, XMM PMOVMSKB doesn't appear until SSE2 llvm-svn: 359477
* [DAG] Refactor DAGCombiner::ReassociateOpsBjorn Pettersson2019-04-2919-147/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Extract the logic for doing reassociations from DAGCombiner::reassociateOps into a helper function DAGCombiner::reassociateOpsCommutative, and use that helper to trigger reassociation on the original operand order, or the commuted operand order. Codegen is not identical since the operand order will be different when doing the reassociations for the commuted case. That causes some unfortunate churn in some test cases. Apart from that this should be NFC. Reviewers: spatel, craig.topper, tstellar Reviewed By: spatel Subscribers: dmgreen, dschuff, jvesely, nhaehnle, javed.absar, sbc100, jgravelle-google, hiraditya, aheejin, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61199 llvm-svn: 359476
* FileCheck [3/12]: Stricter parsing of @LINE expressionsThomas Preud'homme2019-04-294-48/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch is part of a patch series to add support for FileCheck numeric expressions. This specific patch gives earlier and better diagnostics for the @LINE expressions. Rather than detect parsing errors at matching time, this commit adds enhance parsing to detect issues with @LINE expressions at parse time and diagnose them more accurately. Copyright: - Linaro (changes up to diff 183612 of revision D55940) - GraphCore (changes in later versions of revision D55940 and in new revision created off D55940) Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk Subscribers: hiraditya, llvm-commits, probinson, dblaikie, grimar, arichardson, tra, rnk, kristina, hfinkel, rogfer01, JonChesterfield Tags: #llvm Differential Revision: https://reviews.llvm.org/D60383 llvm-svn: 359475
* [TableGen] Fix null pointer dereferencing.Simon Pilgrim2019-04-291-1/+1
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359474
* Avoid "checking a pointer after dereferencing" warning. NFCI.Simon Pilgrim2019-04-291-1/+1
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359473
* Move if() to newline to stop ambiguity over whether it should be else if. NFCI.Simon Pilgrim2019-04-291-1/+2
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359472
* Fix a stack-smasher in PlatformMacOSX::GetSDKDirectory()Adrian Prantl2019-04-291-1/+1
| | | | | | | | | GetSDKVersion expects the number of version fields not their byte size and will happily overwrite later contents of the stack. Differential Revision: https://reviews.llvm.org/D61218 llvm-svn: 359471
* [clangd] Fix serialization logic for Origin and Flags.Kadir Cetinkaya2019-04-292-5/+6
| | | | llvm-svn: 359470
* Fix operator precedence warning. NFCI.Simon Pilgrim2019-04-291-1/+2
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359469
* [LibTooling] Fix unneeded use of unique_ptr where shared_ptr is expected.Yitzhak Mandelbaum2019-04-291-4/+5
| | | | | | | | | | | | | | Summary: This fixes a few places in the Stencil implementation where a unique_ptr is created at a callsite that expects shared_ptr. Since the former implicitly converts to the latter, the code compiles and runs correctly as is. But, there's no reason to involve unique_ptr -- the current code was leftover from a previous version in which unique_ptr was the expected type. Reviewers: sbenza Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D61005 llvm-svn: 359468
* Remove superfluous break from switch statement. NFCI.Simon Pilgrim2019-04-291-1/+0
| | | | | | Reported in https://www.viva64.com/en/b/0629/ llvm-svn: 359467
* [Sanitizer] Cleanup {ASAN, MSAN}_INTERCEPT_FUNC[_VER] macroJulian Lettner2019-04-292-7/+4
| | | | | | | | | | | | Note that this change is not strictly NFC since we add the `(&(name) != &WRAP(name)` part to the conditional for the `_VER` variant of the macro. Reviewers: vitalybuka Differential Revision: https://reviews.llvm.org/D61204 llvm-svn: 359466
* [Docs] Generate the python reference without building all of LLDBJonas Devlieghere2019-04-292-22/+37
| | | | | | | | | | | | As discussed on the mailing list, we should be able to generate the Python reference without building all of LLDB. To make that possible I create a dummy python package, which is then parsed by epydoc. The latter will complain that it couldn't import lldb, but that doesn't matter as far as generation of the docs is concerned. Differential revision: https://reviews.llvm.org/D61216 llvm-svn: 359465
* [llvm-extract] Expose the group extraction feature of the BlockExtractorQuentin Colombet2019-04-292-12/+143
| | | | | | | | | | | | This patch extends the `-bb` option to be able to use the group extraction feature from the BlockExtractor. In particular, `-bb=func:bb` is modified to support a list of basic blocks per function: `-bb=func:bb1[;bb2...]` that will be extracted together if at all possible (region must be single entry.) Differential Revision: https://reviews.llvm.org/D60973 llvm-svn: 359464
* [BlockExtractor] Expose a constructor for the group extractionQuentin Colombet2019-04-292-3/+33
| | | | | | | | NFC Differential Revision: https://reviews.llvm.org/D60971 llvm-svn: 359463
* [BlockExtractor] Change the basic block separator from ',' to ';'Quentin Colombet2019-04-292-3/+3
| | | | | | | | | This change aims at making the file format be compatible with the way LLVM handles command line options. Differential Revision: https://reviews.llvm.org/D60970 llvm-svn: 359462
* Add AVX support to this test.Kevin P. Neal2019-04-291-1/+1567
| | | | | | Requested by Craig Topper and Andrew Kaylor as part of D55897. llvm-svn: 359461
* [X86] Remove duplicate string comparisonSimon Pilgrim2019-04-291-1/+0
| | | | | | Fix typo introduced in rL332824 where we simplified the extact string matches for "avx512.mask.permvar.sf.256" and "avx512.mask.permvar.si.256" to a string startswith test for "avx512.mask.permvar." llvm-svn: 359460
* [OPENMP]Fix PR41617: crash on template instantiation.Alexey Bataev2019-04-292-11/+29
| | | | | | | Fixed the crash on the template instantiation when trying to check the data locality in the current instantiation scope. llvm-svn: 359459
* Add tests specifically for LWG2164. We already did this; but now we have ↵Marshall Clow2019-04-293-1/+24
| | | | | | tests. NFC llvm-svn: 359458
OpenPOWER on IntegriCloud