summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [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
* [AArch64][SVE] Asm: add aliases for unpredicated bitwise logical instructionsCullen Rhodes2019-04-296-4/+120
| | | | | | | | | This patch adds aliases for element sizes .B/.H/.S to the AND/ORR/EOR/BIC bitwise logical instructions. The assembler now accepts these instructions with all element sizes up to 64-bit (.D). The preferred disassembly is .D. llvm-svn: 359457
* Remove XFAIL: windows from x86-64-gp-write.testPavel Labath2019-04-291-1/+0
| | | | | | The typo fix in r359451 was enough to get it passing there. llvm-svn: 359456
* [clangd] Add separate unit tests for CanonicalIncludes. NFCSam McCall2019-04-293-35/+66
| | | | llvm-svn: 359455
* [X86][SSE] Add scalar horizontal add/sub tests for non-0/1 element extractionsSimon Pilgrim2019-04-292-242/+685
| | | | llvm-svn: 359454
* [libclang] Add missing export for clang_Cursor_isAnonymousRecordDeclIvan Donchevskii2019-04-291-0/+1
| | | | | | Follow up for D61232 to fix build. llvm-svn: 359453
* @skipIfLinux another batch of flaky lldb-mi testsPavel Labath2019-04-292-1/+3
| | | | llvm-svn: 359452
* Fix a typo in x86-64-gp-write.testPavel Labath2019-04-291-1/+1
| | | | | | The test was building the wrong inferior, causing failures. llvm-svn: 359451
* Remove obsoleted NativePDB testsPavel Labath2019-04-291-26/+0
| | | | | | | | Their functionality overlaps with the newly introduced PostfixExpressionTests (r359288). Tests, which still exercise some pdb-related functionality (register name resolution) have been kept. llvm-svn: 359450
* Editline: Fix an msan errorPavel Labath2019-04-291-3/+7
| | | | | | | | | | | | | | | | | | | | Summary: libedit implementation of el_get(EL_GETTC) had a bug, where it was consuming vararg arguments until reaching the first null pointer (and not just two, as documented). This was causing (at least) errors to be reported when running the tests under msan. The issue has since been fixed in libedit, but this adds patch adds a trivial workaround, so that we operate correctly with the libedit versions which are already out there. Reviewers: christos, krytarowski, davide Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D61191 llvm-svn: 359449
* [libclang] Restore old clang_Cursor_isAnonymous behaviourIvan Donchevskii2019-04-294-2/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | D54996 Changed the behaviour of clang_Cursor_isAnonymous, but there is no alternative available to get the old behaviour in some cases, which is essential for determining if a record is syntactically accessible, e.g. struct { int x; int y; } foo; struct { struct { int x; int y; }; } bar; void fun(struct { int x; int y; } *param); The only 'anonymous' struct here is the one nested in bar, since there is no way to reference the struct itself, only the fields within. Though the anonymity applies to the instance itself, not the type. To avoid confusion, I have added a new function called clang_Cursor_isAnonymousRecordDecl which has the old behaviour of clang_Cursor_isAnonymous (and updated the doc for the latter as well, which was seemingly forgotten). Patch by Jorn Vernee. Differential Revision: https://reviews.llvm.org/D61232 llvm-svn: 359448
* FileCheck [2/12]: Stricter parsing of -D optionThomas Preud'homme2019-04-294-50/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 -D option. Prior to this change, parsing of -D option was very loose: it assumed that there is an equal sign (which to be fair is now checked by the FileCheck executable) and that the part on the left of the equal sign was a valid variable name. This commit adds logic to ensure that this is the case and gives diagnostic when it is not, making it clear that the issue came from a command-line option error. This is achieved by sharing the variable parsing code into a new function ParseVariable. 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/D60382 llvm-svn: 359447
* [LoopSimplifyCFG] Suppress expensive DomTree verificationYevgeny Rouban2019-04-291-1/+7
| | | | | | | | | This patch makes verification level lower for builds with inexpensive checks. Differential Revision: https://reviews.llvm.org/D61055 llvm-svn: 359446
* [yaml2obj] - Simplify and reduce the code. NFC.George Rimar2019-04-291-17/+8
| | | | | | | | | | | This inlines 2 single line static methods and simplifies the code. It is also possible to remove the `Is64Bit` variable since it is used only once, but I am not sure it will be better for readability. llvm-svn: 359445
* [yaml2obj] - Replace a loop with write_zeros(). NFCI.George Rimar2019-04-291-2/+1
| | | | | | This looks better. llvm-svn: 359444
* [yaml2obj] - Cleanup and simplify the code. NFCI.George Rimar2019-04-291-12/+15
| | | | | | | | | | | | | | The current code has the following problems: `initSymtabSectionHeader` and `initStrtabSectionHeader` method names saying us they are going to initialize the section headers. Though for a few cases sh_flags field is initialized outside of them. It does not look clean. This patch moves initialization of the sh_flags inside these methods. Also, it removes an excessive variable, what together with the above change hopefully makes the code a bit more readable. llvm-svn: 359443
* [clangd] Fix unittests CMake rulesSam McCall2019-04-292-4/+5
| | | | llvm-svn: 359442
* [lldb] [lit] Introduce tests for writing x86 general-purpose registersMichal Gorny2019-04-294-0/+168
| | | | | | | | | | | Introduce two initial tests for 'register write' command. The tests first clobber x86 general purpose registers, then call int3 to let lldb write to them, then print the new values. FileCheck takes care of verifying whether correct values were written. Differential Revision: https://reviews.llvm.org/D61221 llvm-svn: 359441
* [lldb] [test] Remove duplicate YMM/ZMM dotest testsMichal Gorny2019-04-294-354/+0
| | | | llvm-svn: 359440
* [lldb] [lit] Add tests for reading ZMM registers (AVX512)Michal Gorny2019-04-294-0/+344
| | | | | | Differential Revision: https://reviews.llvm.org/D61212 llvm-svn: 359439
* [lldb] [lit] Introduce tests for reading x86 general purpose registersMichal Gorny2019-04-294-0/+156
| | | | | | | | | | | | | | Introduce tests for reading the eight x86 general purpose registers, i.e. RAX/RBX/RCX/RDX/RBP/RSP/RSI/RDI and their shorter counterparts. The test comes in separate 32-bit and 64-bit variant, targeting appropriate processors. While technically the 32-bit test could run on amd64, it would be redundant to the 64-bit version, so just run one of them on each arch. Differential Revision: https://reviews.llvm.org/D61210 llvm-svn: 359438
* [X86][SSE] Moved haddps test from phaddsub.ll to haddsub.ll (D61245)Simon Pilgrim2019-04-292-118/+79
| | | | | | Also merged duplicate PR39921 + PR39936 tests llvm-svn: 359437
* DWARFExpression: Fix implementation of DW_OP_pickPavel Labath2019-04-295-1/+54
| | | | | | | | | | | | | | | | | | | | | | Summary: The DWARF spec states that the DWARF stack arguments are numbered from the top. Our implementation of DW_OP_pick was counting them from the bottom. This bug probably wasn't noticed because nobody (except my upcoming postfix-to-DWARF converter) uses DW_OP_pick, but I've cross-checked with gdb to confirm that counting from the top is the expected behavior. This patch fixes the implementation to match the spec and gdb behavior and adds a test. Reviewers: jasonmolenda, clayborg Subscribers: mgorny, aprantl, lldb-commits Differential Revision: https://reviews.llvm.org/D61182 llvm-svn: 359436
* [InstCombine][X86] Add PACKSS tests for truncation of sign-extended comparisonsSimon Pilgrim2019-04-291-0/+106
| | | | llvm-svn: 359435
* [clangd] Fix windows buildbot, remove stray file after r359424. NFCSam McCall2019-04-292-9/+1
| | | | llvm-svn: 359434
* [ARM] Add bitcast/extract_subvec. of fp16 vectorsDiogo N. Sampaio2019-04-293-93/+866
| | | | | | | | | | | | | | | | | | | | Summary: This patch adds some basic operations for fp16 vectors, such as bitcast from fp16 to i16, required to perform extract_subvector (also added here) and extract_element. Reviewers: SjoerdMeijer, DavidSpickett, t.p.northover, ostannard Reviewed By: ostannard Subscribers: javed.absar, kristof.beyls, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D60618 llvm-svn: 359433
* [clangd] Surface diagnostics from headers inside main fileKadir Cetinkaya2019-04-295-19/+198
| | | | | | | | | | | | Reviewers: ioeric, ilya-biryukov Subscribers: MaskRay, jkorous, arphaman, jdoerfert, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D59302 llvm-svn: 359432
* [ARM] Add v4f16 and v8f16 types to the CallingConvDiogo N. Sampaio2019-04-292-18/+244
| | | | | | | | | | | | | | | | | | | | | Summary: The Procedure Call Standard for the Arm Architecture states that float16x4_t and float16x8_t behave just as uint16x4_t and uint16x8_t for argument passing. This patch adds the fp16 vectors to the ARMCallingConv.td file. Reviewers: miyuki, ostannard Reviewed By: ostannard Subscribers: ostannard, javed.absar, kristof.beyls, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D60720 llvm-svn: 359431
* vs integration: Use llvm-lib for librarianRussell Gallop2019-04-293-0/+24
| | | | | | | | | | | | | | This uses llvm-lib.exe for the librarian instead of Visual Studio provided lib.exe. Without this it is not possible to create static libraries with -flto using the plugin. Original patch by Steven Noonan This fixes: PR41147 Differential Revision: https://reviews.llvm.org/D61193 llvm-svn: 359430
* gn: Fix check-clang build after r359179Hans Wennborg2019-04-291-0/+1
| | | | llvm-svn: 359429
* [clangd] Delete config.clangd_xpc_support from test/ to unbreak check-llvm-toolsFangrui Song2019-04-292-5/+0
| | | | | | | D61187 didn't delete config.clangd_xpc_support from test/ CLANGD_BUILD_XPC is defined in clangd/CMakeLists.txt and not available in test/lit.site.cfg.py.in llvm-svn: 359428
* Try to use /proc on FreeBSD for getExecutablePathDavid Chisnall2019-04-291-1/+14
| | | | | | | | | | | Currently, clang's libTooling passes this function a fake argv0, which means that no libTooling tools can find the standard headers on FreeBSD. With this change, these will now work on any FreeBSD systems that have procfs mounted. This isn't the right fix for the libTooling issue, but it does bring the FreeBSD implementation of getExecutablePath closer to the Linux and macOS implementations. llvm-svn: 359427
* [DebugInfo] Terminate more location-list ranges at the end of blocksJeremy Morse2019-04-296-35/+464
| | | | | | | | | | | | | | | | This patch fixes PR40795, where constant-valued variable locations can "leak" into blocks placed at higher addresses. The root of this is that DbgEntityHistoryCalculator terminates all register variable locations at the end of each block, but not constant-value variable locations. Fixing this requires constant-valued DBG_VALUE instructions to be broadcast into all blocks where the variable location remains valid, as documented in the LiveDebugValues section of SourceLevelDebugging.rst, and correct termination in DbgEntityHistoryCalculator. Differential Revision: https://reviews.llvm.org/D59431 llvm-svn: 359426
* [DWARF] Fix dump of local/foreign TU lists in .debug_namesFangrui Song2019-04-292-2/+110
| | | | | | Differential Revision: https://reviews.llvm.org/D61241 llvm-svn: 359425
* [clangd] Move clangd tests to clangd directory. check-clangd is no longer ↵Sam McCall2019-04-29112-58/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | part of check-clang-tools. Summary: Motivation: - this layout is a pain to work with - without a common root, it's painful to express things like "disable clangd" (D61122) - CMake/lit configs are a maintenance hazard, and the more the one-off hacks for various tools are entangled, the more we see apathy and non-ownership. This attempts to use the bare-minimum configuration needed (while still supporting the difficult cases: windows, standalone clang build, dynamic libs). In particular the lit.cfg.py and lit.site.cfg.py.in are merged into lit.cfg.in. The logic in these files is now minimal. (Much of clang-tools-extra's lit configs can probably be cleaned up by reusing lit.llvm.llvm_config.use_clang(), and every llvm project does its own version of LDPATH mangling. I haven't attempted to fix any of those). Docs are still in clang-tools-extra/docs, I don't have any plans to touch those. Reviewers: gribozavr Subscribers: mgorny, javed.absar, MaskRay, jkorous, arphaman, kadircet, jfb, cfe-commits, ilya-biryukov, thakis Tags: #clang Differential Revision: https://reviews.llvm.org/D61187 llvm-svn: 359424
* [builtins] Use __APPLE__ instead of __MACH__ in checkPetr Hosek2019-04-291-1/+1
| | | | | | | The latter doesn't seem to be working for all targets. This addresses the issue introduced in r359413. llvm-svn: 359423
* [DWARF] Delete a redundant check in getFileNameByIndex()Fangrui Song2019-04-291-2/+1
| | | | llvm-svn: 359422
* [builtins] Fix the missing assembly on DarwinPetr Hosek2019-04-291-1/+1
| | | | | | This was introduced in r359413. llvm-svn: 359421
* [Windows] Dump more information about access violation exceptionAleksandr Urakov2019-04-294-1/+110
| | | | | | | | | | | | | | | | | | | | Summary: Dump more information about "access violation" and "in page error" exceptions to description. Description now contains data about read/write violation type and actual address as described at https://docs.microsoft.com/en-us/windows/desktop/api/winnt/ns-winnt-_exception_record Reviewers: asmith, stella.stamenova Reviewed By: stella.stamenova Subscribers: teemperor, amccarth, abidh, lldb-commits, aleksandr.urakov Tags: #lldb Differential Revision: https://reviews.llvm.org/D60519 llvm-svn: 359420
* [builtins] Fix the typo in the preprocessor checkPetr Hosek2019-04-291-1/+1
| | | | | | This was introduced in r359413. llvm-svn: 359419
* [X86] Remove some intel syntax aliases on (v)cvtpd2(u)dq, (v)cvtpd2ps, ↵Craig Topper2019-04-296-202/+3085
| | | | | | | | | | | | | | | | | | | (v)cvt(u)qq2ps. Add 'x' and'y' suffix aliases to masked version of the same in att syntax. The 128/256 bit version of these instructions require an 'x' or 'y' suffix to disambiguate the memory form in att syntax. We were allowing the same suffix in intel syntax, but it appears gas does not do that. gas does allow the 'x' and 'y' suffix on register and broadcast forms even though its not needed. We were allowing it on unmasked register form, but not on masked versions or on masked or unmasked broadcast form. While there fix some test coverage holes so they can be extended with the 'x' and 'y' suffix tests. llvm-svn: 359418
* [llvm-nm] -print-size => --print-sizeFangrui Song2019-04-291-1/+1
| | | | llvm-svn: 359417
* [llvm-nm] Simplify and fix a buffer overflowFangrui Song2019-04-291-149/+107
| | | | | | | | | | | | | * char SymbolAddrStr[18] can't hold "%" PRIo64 which may need 22 characters. * Use range-based for * Delete unnecessary typedef * format(...).print(Str, sizeof(Str)) + outs() << Str => outs() << format(...) * Use cascading outs() << .. << .. * Use iterator_range(Container &&c) * (A & B) == B => A & B if B is a power of 2 * replace null sentinel in constants with makeArrayRef llvm-svn: 359416
OpenPOWER on IntegriCloud