summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* PR33850: Update cxx_dr_status for Clang 5 branch.Richard Smith2017-08-114-30/+30
| | | | llvm-svn: 310692
* PR33489: A function-style cast to a deduced class template specialization ↵Richard Smith2017-08-112-1/+26
| | | | | | type is type-dependent if it can't be resolved due to a type-dependent argument. llvm-svn: 310691
* [Sema][ObjC] Fix spurious -Wcast-qual warnings.Akira Hatanaka2017-08-112-3/+23
| | | | | | | | | | We do not meaningfully track object const-ness of Objective-C object types. Silence the -Wcast-qual warning that is issued when casting to or from Objective-C object types results in losing const qualification. rdar://problem/33807915 llvm-svn: 310672
* [MachineOutliner] Add RegState::Define to LDRXpost in insertOutlinedCallJessica Paquette2017-08-101-1/+1
| | | | | | | | | | | This fixes a MachineVerifier failure in machine-outliner.mir. Not explicitly adding RegState::Define to the LR argument makes it unhappy because an explicit definition is marked as a use. Build failure: http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-expensive/7496/testReport/junit/LLVM/CodeGen_AArch64/machine_outliner_mir/ llvm-svn: 310671
* OMP_PROC_BIND: better spreadPaul Osmialowski2017-08-101-42/+108
| | | | | | | | | This change improves the way threads are spread across cores when OMP_PROC_BIND=spread is set and no unusual affinity masks are in use. Differential Revision: https://reviews.llvm.org/D36510 llvm-svn: 310670
* [clang-tidy] Fix for buildbot.Yan Wang2017-08-1010-0/+360
| | | | | | | | | Summary: Fix an issue for windows. Differential Revision: https://reviews.llvm.org/D35372 llvm-svn: 310669
* Fix two warnings in polly, -Wmismatched-tags and -WreorderReid Kleckner2017-08-103-3/+3
| | | | llvm-svn: 310667
* Revert "[AsmParser] Hash is not a comment on some targets"Ahmed Bougacha2017-08-106-97/+115
| | | | | | | | This reverts commit r310457. It causes clang-produced IR to fail llvm codegen. llvm-svn: 310662
* Revert "[clang-tidy] Refactor the code and add a close-on-exec check on ↵Reid Kleckner2017-08-1010-360/+0
| | | | | | | | | | | | memfd_create() in Android module." This reverts commit r310630. The new code broke on Windows and was untested. On Linux, it was selecting the "int" overload of operator<<, which definitely does not print the right thing when fed a "Mode" char. llvm-svn: 310661
* Disable some IR death tests when SEH is availableReid Kleckner2017-08-101-3/+6
| | | | | | | | They hang for me locally. I suspect that there is a use-after-free when attempting to destroy an LLVMContext after asserting from the middle of metadata tracking. It doesn't seem worth debugging it further. llvm-svn: 310660
* Revert "[DAG] Cleanup unused nodes after store merge. NFCI."Nirav Dave2017-08-101-11/+1
| | | | | | This reverts commit r310648 which causes an unexpected assertion failure llvm-svn: 310659
* [InstCombine] Make (X|C1)^C2 -> X^(C1^C2) iff X&~C1 == 0 work for splat vectorsCraig Topper2017-08-103-33/+38
| | | | | | | | This also corrects the description to match what was actually implemented. The old comment said X^(C1|C2), but it implemented X^((C1|C2)&~(C1&C2)). I believe ((C1|C2)&~(C1&C2)) is equivalent to (C1^C2). Differential Revision: https://reviews.llvm.org/D36505 llvm-svn: 310658
* [X86] Implement __builtin_cpu_isCraig Topper2017-08-1010-0/+277
| | | | | | | | This patch adds support for __builtin_cpu_is. I've tried to match the strings supported to the latest version of gcc. Differential Revision: https://reviews.llvm.org/D35449 llvm-svn: 310657
* [DAG] Relax type restriction for store mergeNirav Dave2017-08-102-29/+66
| | | | | | | | | | | | | | Summary: Allow stores of bitcastable types to be merged by peeking through BITCAST nodes and recasting stored values constant and vector extract nodes as necessary. Reviewers: jyknight, hfinkel, efriedma, RKSimon, spatel Reviewed By: RKSimon Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D34569 llvm-svn: 310655
* [CostModel][X86] Add SSE2 two-src shuffle costsSimon Pilgrim2017-08-103-12/+14
| | | | llvm-svn: 310654
* [ARM] Clarify legal addressing modes for ARM and Thumb2. NFCEli Friedman2017-08-101-3/+11
| | | | | | | | | The existing code is very clever, but not clear, which seems like the wrong tradeoff here. Differential Revision: https://reviews.llvm.org/D36559 llvm-svn: 310653
* [gold-plugin] Use more StringRef. No functionality change intended.Benjamin Kramer2017-08-101-14/+10
| | | | llvm-svn: 310652
* Enable ASAN on NetBSDKamil Rytarowski2017-08-101-3/+2
| | | | | | | | | | | | | | | | | | | Summary: This enables also static runtime option. Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka, filcab, kcc, fjricci Reviewed By: vitalybuka Subscribers: mgorny, llvm-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D36490 llvm-svn: 310651
* [CostModel][X86] Add avx1 two-src shuffle costsSimon Pilgrim2017-08-103-26/+35
| | | | llvm-svn: 310650
* Enable bunch of sanitizers on NetBSD/X86 and X86_64Kamil Rytarowski2017-08-102-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Enable more sanitizers: - i386 and amd64: * SanitizerKind::Vptr; * SanitizerKind::Leak; * SanitizerKind::SafeStack; * SanitizerKind::Function; - amd64 only: * SanitizerKind::Thread; These sanitizers are in the process of upstreaming to LLVM projects. Sponsored by <The NetBSD Foundation> Reviewers: joerg, dim, vitalybuka, kcc, filcab, fjricci Reviewed By: vitalybuka Subscribers: #sanitizers, cfe-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D36482 llvm-svn: 310649
* [DAG] Cleanup unused nodes after store merge. NFCI.Nirav Dave2017-08-101-1/+11
| | | | llvm-svn: 310648
* Add NetBSD support in asan_linux.ccKamil Rytarowski2017-08-101-2/+15
| | | | | | | | | | | | | | | | | | | Summary: Part of the code inspired by the original work on libsanitizer in GCC 5.4 by Christos Zoulas. Sponsored by <The NetBSD Foundation> Reviewers: fjricci, vitalybuka, joerg, kcc, filcab Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D36488 llvm-svn: 310647
* Enable SafeStack on NetBSDKamil Rytarowski2017-08-103-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: make check-safestack: -- Testing: 8 tests, 8 threads -- Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. Testing Time: 0.44s Expected Passes : 7 Unsupported Tests : 1 Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka, kcc, fjricci, filcab Reviewed By: vitalybuka Subscribers: mgorny, llvm-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D36542 llvm-svn: 310646
* [CostModel][X86] Add avx2 two-src shuffle costsSimon Pilgrim2017-08-103-36/+45
| | | | llvm-svn: 310645
* remove FreeBSD xfail decorator from TestCppNsImportEd Maste2017-08-101-1/+0
| | | | | | | | | | The Linux xfail decorator was removed in r272326 with the claim that the test "runs reliably on the linux x86 buildbot." It also runs reliably on FreeBSD for me. llvm.org/pr25925 llvm-svn: 310644
* [clang-tidy] Fix a buildbot.Yan Wang2017-08-101-2/+2
| | | | | | Fix format in ReleaseNotes.rst. llvm-svn: 310643
* Make .file directive to have basename onlyTaewook Oh2017-08-102-1/+16
| | | | | | | | | | | | | | | Summary: Currently LLVM puts directory along with the filename in .file directive, but this behavior doesn't match gcc. There's a no clear description about which one is right (https://sourceware.org/binutils/docs/as/File.html#File), but one document (https://sourceware.org/gdb/current/onlinedocs/stabs/ELF-Linker-Relocation.html) suggests that STT_FILE symbol in elf file is expected to have basename only, which should have a same sting file .file directive according to (https://docs.oracle.com/cd/E26502_01/html/E28388/eoiyg.html). This also affects badly on the build system that uses hashing, as the directory info could be differnt from developer to developer even when they're working on same file. Reviewers: pcc, mehdi_amini Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D36018 llvm-svn: 310642
* [CostModel][X86] Extend two src shuffle cost testsSimon Pilgrim2017-08-101-17/+195
| | | | | | Cover most 128/256/512/1024-bit cases for vXf64/vXi64, vXf32/vXi32, vXi16 + vXi8 llvm-svn: 310641
* Disabling openmp-offload.c on linux until it is stabilized on all local ↵Alex Shlyapnikov2017-08-101-0/+3
| | | | | | configurations. llvm-svn: 310640
* [InstCombine] Fix a crash in getSelectCondition if we happen to have two ↵Craig Topper2017-08-102-2/+15
| | | | | | | | inverse vectors of i1 constants. We used to try to truncate the constant vector to vXi1, but if it's already i1 this would fail. Instead we now use IRBuilder::getZExtOrTrunc which should check the type and only create a trunc if needed. I believe this should trigger constant folding in the IRBuilder and ultimately do the same thing just with the additional type check. llvm-svn: 310639
* [InstCombine] Add a DEBUG_COUNTER to InstCombine to limit how many ↵Craig Topper2017-08-101-0/+6
| | | | | | | | | | | | instructions are visited for debug Sometimes it would be nice to stop InstCombine mid way through its combining to see the current IR. By using a debug counter we can place an upper limit on how many instructions to process. This will also allow skipping the first X combines, but that has the potential to change later combines since earlier canonicalizations might have been skipped. Differential Revision: https://reviews.llvm.org/D36553 llvm-svn: 310638
* [DebugCounter] Move the semicolon out of the DEBUG_COUNTER macro and require ↵Craig Topper2017-08-104-6/+7
| | | | | | | | | | it to be placed at the end of each use. This make it consistent with STATISTIC which it will often appears near. While there move one DEBUG_COUNTER instance out of an anonymous namespace. It's already declaring a static variable so the namespace is unnecessary. llvm-svn: 310637
* [gold-plugin] Avoid race condition when creating temporary files.Benjamin Kramer2017-08-101-11/+12
| | | | | | | | This is both a potential security issue and a potential functionality issue because we create temporary files from multiple threads. Use the safe version of createTemporaryFile instead. llvm-svn: 310636
* [CostModel][X86] Add avx512vbmi broadcast/reverse/single-src shuffle cost testsSimon Pilgrim2017-08-103-6/+18
| | | | llvm-svn: 310633
* [CostModel][X86] Improve single src shuffle costsSimon Pilgrim2017-08-102-71/+96
| | | | | | Add missing SK_PermuteSingleSrc costs for AVX2 targets and earlier, also added some of the simpler SK_PermuteTwoSrc costs to support splitting of SK_PermuteSingleSrc shuffles llvm-svn: 310632
* Fix 'not all control paths return' warning on windows builds. NFCI.Simon Pilgrim2017-08-101-3/+1
| | | | llvm-svn: 310631
* [clang-tidy] Refactor the code and add a close-on-exec check on ↵Yan Wang2017-08-1010-0/+360
| | | | | | | | | | | | | | | | | | | | memfd_create() in Android module. Summary: 1. Refactor the structure of the code by adding a base class for all close-on-exec checks, which implements most of the needed functions. 2. memfd_create() is better to set MFD_CLOEXEC flag to avoid file descriptor leakage. Reviewers: alexfh, aaron.ballman, hokein Reviewed By: alexfh, hokein Subscribers: Eugene.Zelenko, chh, cfe-commits, srhines, mgorny, JDevlieghere, xazax.hun Tags: #clang-tools-extra Differential Revision: https://reviews.llvm.org/D35372 llvm-svn: 310630
* [Parse] Document Parser::SkipFunctionBodiesBrian Gesiak2017-08-101-0/+4
| | | | | | | | | | Reviewers: erikjv, doug.gregor Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D36531 llvm-svn: 310627
* remove FreeBSD xfail decorator from TestCallStdStringFunctionEd Maste2017-08-101-3/+0
| | | | | | | | | | | This test is consistently reporting unexpected pass for me on FreeBSD 10 and 12. It was failing on the old FreeBSD buildbot which has now been retired for some time. Will investigate further if this fails once a new buildbot is configured and running tests. llvm.org/pr17807 llvm-svn: 310626
* [OpenMP] Delete tests in openmp-offload.c which cuase failuresGheorghe-Teodor Bercea2017-08-103-68/+18
| | | | | | | | until a better way to perform these tests is figured out. Change connected to diff: D29654 llvm-svn: 310625
* remove FreeBSD xfail decorator from TestExitDuringBreakEd Maste2017-08-101-3/+0
| | | | | | | | This test passes for me on FreeBSD 10 and 12(-CURRENT). llvm.org/pr18190 llvm-svn: 310624
* Fixup for r310621: Hint the compilers about unreachable code.Marek Sokolowski2017-08-101-0/+4
| | | | llvm-svn: 310623
* Add a getName accessor for ModuleMacros.Bob Wilson2017-08-101-0/+3
| | | | | | | | | Swift would like to be able to access the name of a ModuleMacro. There was some discussion of this in https://github.com/apple/swift-clang/pull/93, suggesting that it makes sense to have this accessor in Clang. llvm-svn: 310622
* Add .rc scripts tokenizer.Marek Sokolowski2017-08-107-2/+507
| | | | | | | | | | | | This extends the shell of llvm-rc tool with the ability of tokenization of the input files. Currently, ASCII and ASCII-compatible UTF-8 files are supported. Thanks to Nico Weber (thakis) for his original work in this area. Differential Revision: https://reviews.llvm.org/D35957 llvm-svn: 310621
* Remove ResolvedReloc.Rui Ueyama2017-08-101-40/+36
| | | | | | | | | ResolvedReloc struct is always passed to a callback function and not stored anywhere. That is, in effect, we use the struct to pack multiple arguments to one argument, which doesn't make much sense. This patch removes the struct and passes the members to the callback directly. llvm-svn: 310620
* Add "Restored" flag to CalleeSavedInfoKrzysztof Parzyszek2017-08-1025-31/+60
| | | | | | | | | | | The liveness-tracking code assumes that the registers that were saved in the function's prolog are live outside of the function. Specifically, that registers that were saved are also live-on-exit from the function. This isn't always the case as illustrated by the LR register on ARM. Differential Revision: https://reviews.llvm.org/D36160 llvm-svn: 310619
* Fixed a race condition in PrecompiledPreamble.Ilya Biryukov2017-08-101-1/+9
| | | | | | | | | | | | | | | | Summary: Two PrecompiledPreambles, used in parallel on separate threads, could be writing preamble to the same temporary file. Reviewers: bkramer, krasimir, klimek Reviewed By: klimek Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D36529 llvm-svn: 310618
* Garbage-collect common symbols.Rui Ueyama2017-08-107-10/+88
| | | | | | | | | | | | Liveness is usually a notion of input sections, but this patch adds "liveness" bit to common symbols because they don't belong to any input section. This patch is based on https://reviews.llvm.org/D36520 Differential Revision: https://reviews.llvm.org/D36546 llvm-svn: 310617
* Place implictly declared functions at block scopeMomchil Velikov2017-08-1014-36/+103
| | | | | | | | | | | | Such implicitly declared functions behave as if the enclosing block contained the declaration extern int name() (C90, 6.3.3.2 Function calls), thus their names should have block scope (C90, 6.1.2.1 Scope of identifiers). This patch fixes https://bugs.llvm.org/show_bug.cgi?id=33224 Differential Revision: https://reviews.llvm.org/D33676 llvm-svn: 310616
* [mips] Group all `-mabicalls` related checks in the single place. NFCSimon Atanasyan2017-08-102-6/+6
| | | | llvm-svn: 310615
OpenPOWER on IntegriCloud