summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [libomptarget-nvptx] Enable asserts in bclibJonas Hahnfeld2018-10-011-1/+1
| | | | | | | | | | | If the user requested LIBOMPTARGET_NVPTX_DEBUG, include asserts in the bitcode library. Everything else will have very unpleasent effects because asserts will appear when falling back to the static library libomptarget-nvptx.a. Differential Revision: https://reviews.llvm.org/D52701 llvm-svn: 343477
* [libomptarget-nvptx] reduction: Determine if runtime uninitializedJonas Hahnfeld2018-10-011-8/+10
| | | | | | | | | | Pass in the correct value of isRuntimeUninitialized() which solves parallel reductions as reported on the mailing list. For reference: r333285 did the same for loop scheduling. Differential Revision: https://reviews.llvm.org/D52725 llvm-svn: 343476
* Fixed workaround made in https://reviews.llvm.org/D51694.Andrey Churbanov2018-10-011-4/+4
| | | | | | | | | Patch suggested by Kelvin Li: removed optional "kind=" part of kind-selector for variables with long names and kind names. Differential Revision: https://reviews.llvm.org/D52712 llvm-svn: 343475
* [clangd] Add "check-clangd" targetHaojian Wu2018-10-011-15/+16
| | | | | | | | | | | | | | | | | | | | | Summary: So we don't have to run "check-clang-tools" (which builds and tests all clang tools) to verify our clangd-related change. It'd save waiting time for clangd developers. check-clangd (build ~1000 files, run ~340 tests) vs check-clang-tools (build ~3000 files, run ~1000 tests). In the future, we probably want to add similar target for other clang-tools (e.g. clang-tidy). Reviewers: sammccall Subscribers: mgorny, ilya-biryukov, ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D52710 llvm-svn: 343474
* Move llvm util dependencies from clang-tools-extra to add_lit_target.Haojian Wu2018-10-011-0/+11
| | | | | | | | | | | | | | Summary: Address fixme in r301762. And would simplify the cmake file in clang-tools-extra. Reviewers: sammccall Subscribers: mgorny, llvm-commits, cfe-commits Differential Revision: https://reviews.llvm.org/D52713 llvm-svn: 343473
* Add support for unified_shared_memory clause on requires directivePatrick Lyster2018-10-0117-1/+99
| | | | llvm-svn: 343472
* [Interpreter] Escape backticks when dumping format entities.Jonas Devlieghere2018-10-012-1/+19
| | | | | | | | | Currently we reject our own default disassembly-format string because it contains two backticks which causes everything in between to be interpreter as an expression by the command interpreter. This patch fixes that by escaping backticks when dumping format strings. llvm-svn: 343471
* Escape newlines in default disassembly format.Jonas Devlieghere2018-10-011-2/+2
| | | | | | | We can safely escape newlines in format strings because they will be ignored by the format entity parser. llvm-svn: 343470
* [LLVM-C] Add an accessor for the kind of a Metadata NodeRobert Widmann2018-10-012-0/+56
| | | | | | | | | | | | | | Summary: Allows for retrieving the type of a metadata node. Has the added benefit of ensuring that the C and C++ kind APIs stay in sync as a failure to add a corresponding LLVMMetadataKind will result in the switch in the accessor being semantically malformed. Reviewers: whitequark, deadalnix Reviewed By: whitequark Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D52693 llvm-svn: 343469
* [X86][Btver2] Fix masked load scheduleSimon Pilgrim2018-10-012-9/+9
| | | | | | | | JFPU01 resource usage should match JFPX Match AMD Fam16h SOG + llvm-exegesis tests llvm-svn: 343468
* [llvm-exegesis][NFC] Move random functions from CodeTemplate to ↵Guillaume Chatelet2018-10-014-109/+104
| | | | | | | | | | | | | | SnippetGenerator. Summary: Just moving methods around. Reviewers: courbet Subscribers: tschuett, llvm-commits Differential Revision: https://reviews.llvm.org/D52720 llvm-svn: 343461
* [Support] Listing a directory containing dangling symlinks is not an error.Sam McCall2018-10-013-76/+34
| | | | | | | | | | | | | | Summary: Reporting this as an error required stat()ing every file, as well as seeming semantically questionable. Reviewers: vsk, bkramer Subscribers: mgrang, kristina, llvm-commits, liaoyuke Differential Revision: https://reviews.llvm.org/D52648 llvm-svn: 343460
* Build clang-headers when building clang tools.Haojian Wu2018-10-011-0/+1
| | | | | | | | | | | | | | | | | Summary: clang tools require clang headers to work on real project, e.g. when we build clangd via `ninja clangd`, we expect the binary can run on real-world project (without running another command `ninja clang-headers`). Reviewers: sammccall Reviewed By: sammccall Subscribers: mgorny, ilya-biryukov, ioeric, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D52714 llvm-svn: 343459
* Revert r343407 "[InstCombine] try to convert vector insert+extract to trunc"Hans Wennborg2018-10-012-99/+33
| | | | | | | | | | | | | | | | | | | This caused Chromium builds to fail with "Illegal Trunc" assertion. See https://crbug.com/890723 for repro. > This transform is requested for the backend in: > https://bugs.llvm.org/show_bug.cgi?id=39016 > ...but I figured it was worth doing in IR too, and it's probably > easier to implement here, so that's this patch. > > In the simplest case, we are just truncating a scalar value. If the > extract index doesn't correspond to the LSBs of the scalar, then we > have to shift-right before the truncate. Endian-ness makes this tricky, > but hopefully the ASCII-art helps visualize the transform. > > Differential Revision: https://reviews.llvm.org/D52439 llvm-svn: 343458
* [CodeComplete] #include completion treats -I as non-system (require ↵Sam McCall2018-10-012-5/+11
| | | | | | header-like extension). llvm-svn: 343457
* [llvm-exegesis][NFC] Make randomizeUnsetVariables a free function.Guillaume Chatelet2018-10-013-17/+19
| | | | | | | | | | | | Summary: This is prelimineary to moving random functions to SnippetGenerator. Reviewers: courbet Subscribers: tschuett, llvm-commits Differential Revision: https://reviews.llvm.org/D52718 llvm-svn: 343456
* [AMDGPU] Divergence driven instruction selection. Shift operations.Alexander Timofeev2018-10-013-23/+45
| | | | | | | | | | Summary: This change enables VOP3 shifts to be explicitly selected dependent on the divergence. Differential Revision: https://reviews.llvm.org/D52559 Reviewers: rampitec llvm-svn: 343455
* [NFC] Adding "REQUIRES: zlib" to a llvm-objcopy test for bots without zlib.Puyan Lotfi2018-10-011-0/+2
| | | | | | M test/tools/llvm-objcopy/compress-and-decompress-debug-sections-error.test llvm-svn: 343454
* [clangd] Query dex index using query-style trigrams, not identifier-style ↵Sam McCall2018-10-011-1/+1
| | | | | | trigrams llvm-svn: 343453
* [X86][BtVer2] Teach how to identify zero-idiom VPERM2F128rr instructions.Andrea Di Biagio2018-10-013-16/+31
| | | | | | | | | | | This patch adds another variant class to identify zero-idiom VPERM2F128rr instructions. On Jaguar, a VPERM wih bit 3 and 7 of the mask set, is a zero-idiom. Differential Revision: https://reviews.llvm.org/D52663 llvm-svn: 343452
* [llvm-objcopy] Adding support for decompressing zlib compressed dwarf sections.Puyan Lotfi2018-10-018-14/+205
| | | | | | | | | | | | | | | Summary: I had added support for compressing dwarf sections in a prior commit, this one adds support for decompressing. Usage is: llvm-objcopy --decompress-debug-sections input.o output.o Reviewers: jakehehrlich, jhenderson, alexshap Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D51841 llvm-svn: 343451
* Recommit r343308: [LoopInterchange] Turn into a loop pass.Florian Hahn2018-10-012-46/+16
| | | | llvm-svn: 343450
* Fix typo in LLD man pageJames Henderson2018-10-011-1/+1
| | | | llvm-svn: 343449
* [clangd] Fix header mapping for std::string. NFCEric Liu2018-10-011-0/+1
| | | | | | Some implementation has std::string declared in <iosfwd>. llvm-svn: 343448
* [X86][Sched] Update scheduling information for VZEROALL on HWS, BDW, SKX, SNB.Clement Courbet2018-10-0110-32/+39
| | | | | | | | | | | | | | | | | Summary: While looking at PR35606, I found out that the scheduling info is incorrect. One can check that it's really a P5+P6 and not a 2*P56 with: echo -e 'vzeroall\nvandps %xmm1, %xmm2, %xmm3' | ./bin/llvm-exegesis -mode=uops -snippets-file=- (vandps executes on P5 only) Reviewers: craig.topper, RKSimon Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D52541 llvm-svn: 343447
* [X86][Sched] Add pfm uop counter definitions for SNB,BDW,SKX.Clement Courbet2018-10-011-0/+3
| | | | llvm-svn: 343446
* [DebugInfo][Dexter] Incorrect DBG_VALUE after MCP dead copy instruction removal.Carlos Alberto Enciso2018-10-015-6/+126
| | | | | | | | When MachineCopyPropagation eliminates a dead 'copy', its associated debug information becomes invalid. as the recorded register has been removed. It causes the debugger to display wrong variable value. Differential Revision: https://reviews.llvm.org/D52614 llvm-svn: 343445
* [CodeGen][NFC] Add tests for heterogeneous types in MergeConsecutiveStoresClement Courbet2018-10-011-0/+72
| | | | | | | | | | Reviewers: efriedma Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D52643 llvm-svn: 343444
* [X86] Stop X86DomainReassignment from creating copies between GR8/GR16 ↵Craig Topper2018-10-012-0/+69
| | | | | | | | | | | | | | physical registers and k-registers. We can only copy between a k-register and a GR32/GR64 register. This patch detects that the copy will be illegal and prevents the domain reassignment from happening for that closure. This probably isn't the best fix, and we should probably figure out how to handle this correctly. Fixes PR38803. llvm-svn: 343443
* [ORC] Pass Symbols to ExecutionSession::lookup by value, potentially saving aLang Hames2018-10-012-3/+3
| | | | | | copy. llvm-svn: 343442
* Attempt to fix aligned allocation configuration under clang-clEric Fiselier2018-10-011-0/+4
| | | | | | | | | | When we're using clang-cl and Microsoft's runtime implementation, we don't provide align_val_t or aligned new/delete ourselves. This patch updates the _LIBCPP_HAS_NO_ALIGNED_ALLOCATION macro to reflect this. llvm-svn: 343441
* Remove one more warning from clang-cl buildEric Fiselier2018-10-011-0/+1
| | | | llvm-svn: 343440
* Fix Shadowing warning on WindowsEric Fiselier2018-10-011-2/+2
| | | | llvm-svn: 343439
* Fix even more Clang warnings.Eric Fiselier2018-10-016-10/+14
| | | | | | | This patch disables shift-sign-overflow warnings for now. It also fixes most -Wfloat-equal warnings and -Wextra-semi warnings. llvm-svn: 343438
* Bump default dialect to C++14 for clang-clEric Fiselier2018-10-011-1/+1
| | | | llvm-svn: 343437
* Remove even more clang-cl warningsEric Fiselier2018-10-011-1/+5
| | | | llvm-svn: 343436
* Mork more tests as FLAKYEric Fiselier2018-10-012-1/+2
| | | | llvm-svn: 343435
* Remove even more warnings from clang-cl buildEric Fiselier2018-10-011-5/+9
| | | | llvm-svn: 343434
* Turn off warnings under clang-clEric Fiselier2018-10-011-0/+12
| | | | llvm-svn: 343433
* Fix threaded test under no-threading configurationEric Fiselier2018-10-012-0/+4
| | | | llvm-svn: 343432
* Attempt to unbreak Windows configuration.Eric Fiselier2018-10-012-1/+5
| | | | | | | | | | | Although libc++ doesn't yet support Windows we still have Windows builders to track our progress. Currently the clang-cl configuration seems broken because it doesn't support -std=c++11 and instead requires /std:c++11. This patch attempts to fix this. llvm-svn: 343431
* [ORC] Add convenience methods for creating DynamicLibraryFallbackGenerators forLang Hames2018-10-013-13/+36
| | | | | | | | libraries on disk, and for the current process. Avoids more boilerplate during JIT construction. llvm-svn: 343430
* [ORC] Add a method to JITTargetMachineBuilder to get the default data layoutLang Hames2018-10-012-6/+13
| | | | | | | | | | for the target machine. This simplifies usage during setup of concurrent JIT stacks where the client needs a DataLayout, but not a TargetMachine (TargetMachines are created on the fly by the compile threads later). llvm-svn: 343429
* [X86] Change an llvm_unreachable to a report_fatal_error so the optimizer ↵Craig Topper2018-09-301-1/+1
| | | | | | | | will stop making us reach the other report_fatal_error in this function. There's a conditional report_fatal_error just above this llvm_unreachable. The optimizer when seeing the unreachable removes the conditional and just makes any other error trigger the existing report_fatal_error. llvm-svn: 343428
* [ORC] Add an 'intern' method to ExecutionEngine for interning symbol names.Lang Hames2018-09-3010-21/+23
| | | | | | | This cuts down on boilerplate by reducing 'ES.getSymbolStringPool().intern(...)' to 'ES.intern(...)'. llvm-svn: 343427
* Use the container form llvm::sort(C, ...)Fangrui Song2018-09-3010-60/+48
| | | | | | | There are a few leftovers in rL343163 which span two lines. This commit changes these llvm::sort(C.begin(), C.end, ...) to llvm::sort(C, ...) llvm-svn: 343426
* Use the container form llvm::sort(C, ...)Fangrui Song2018-09-3010-30/+27
| | | | | | | | | There are a few leftovers of rC343147 that are not (\w+)\.begin but in the form of ([-[:alnum:]>.]+)\.begin or spanning two lines. Change them to use the container form in this commit. The 12 occurrences have been inspected manually for safety. llvm-svn: 343425
* [X86] Fix scheduler class for BTmi instructionsSimon Pilgrim2018-09-305-31/+31
| | | | | | This wasn't treated as a folded load instruction llvm-svn: 343424
* [ORC] Extract and tidy up JITTargetMachineBuilder, add unit test.Lang Hames2018-09-3011-86/+238
| | | | | | | | | | | (1) Adds comments for the API. (2) Removes the setArch method: This is redundant: the setArchStr method on the triple should be used instead. (3) Turns EmulatedTLS on by default. This matches EngineBuilder's behavior. llvm-svn: 343423
* [COFF] In MinGW mode, ignore relocations against a discarded sectionMartin Storsjo2018-09-303-1/+111
| | | | | | | | | | | | | | When GCC produces a jump table as part of a comdat function, the jump table itself is produced as plain non-comdat rdata section. When linked with ld.bfd, all of those rdata sections are kept, with relocations unchanged in the sections that refer to discarded comdat sections. This has been observed with at least GCC 5.x and 7.x. Differential Revision: https://reviews.llvm.org/D52600 llvm-svn: 343422
OpenPOWER on IntegriCloud