summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [clang-tidy] Add a `android-comparison-in-temp-failure-retry` checkGeorge Burgess IV2018-04-108-0/+315
| | | | | | | | | This check attempts to catch buggy uses of the `TEMP_FAILURE_RETRY` macro, which is provided by both Bionic and glibc. Differential Revision: https://reviews.llvm.org/D45059 llvm-svn: 329759
* Handle the default casePetr Hosek2018-04-101-0/+2
| | | | | | | | This was omitted in D45422 resulting in a warning. Differential Revision: https://reviews.llvm.org/D45499 llvm-svn: 329758
* Don't warn on ICFed symbols, warn on synthetic ones.Rafael Espindola2018-04-102-6/+15
| | | | | | Based on a patch for the ICF warning by Rui. llvm-svn: 329757
* [clang-tidy] Unbreak run-clang-tidy.cpp test ↵Roman Lebedev2018-04-101-0/+3
| | | | | | | | (modernize-use-auto.MinTypeNameLength) Again, refs. D45405, rL329730. llvm-svn: 329756
* [CVP] simplify phi with constant incoming values that match common variable ↵Sanjay Patel2018-04-102-0/+154
| | | | | | | | | | | | | | | | | | | | | | | edge values This is based on an example that was recently posted on llvm-dev: void *propagate_null(void* b, int* g) { if (!b) { return 0; } (*g)++; return b; } https://godbolt.org/g/xYk3qG The original code or constant propagation in other passes has obscured the fact that the phi can be removed completely. Differential Revision: https://reviews.llvm.org/D45448 llvm-svn: 329755
* [Driver] Handle the default case missed in r329748.Chad Rosier2018-04-101-0/+2
| | | | | | Differential Revision: https://reviews.llvm.org/D45499 llvm-svn: 329754
* [Verifier] Refactor duplicate code for atomic mem intrinsic verification (NFC)Daniel Neilson2018-04-101-75/+12
| | | | | | | | | Summary: The verification rules for the intrinsics for atomic memcpy, atomic memmove, and atomic memset are basically code clones. This change merges their verification rules into a single block to remove duplication. llvm-svn: 329753
* [MachO] Emit Weak ReadOnlyWithRel to ConstDataSectionSteven Wu2018-04-104-3/+17
| | | | | | | | | | | | | | | | | Summary: Darwin dynamic linker can handle weak symbols in ConstDataSection. ReadonReadOnlyWithRel symbols should be emitted in ConstDataSection instead of normal DataSection. rdar://problem/39298457 Reviewers: dexonsmith, kledzik Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D45472 llvm-svn: 329752
* [OPENMP] Additional attributes for the pointer parameters.Alexey Bataev2018-04-108-95/+133
| | | | | | Added attributes for better optimization of the OpenMP code. llvm-svn: 329751
* [clang-tidy][modernize]: don't forget to actually link to Tooling.Roman Lebedev2018-04-101-0/+1
| | | | | | | | | | | | | | | | Fixes build for me: [1/5] Linking CXX shared library lib/libclangTidyModernizeModule.so.7svn FAILED: lib/libclangTidyModernizeModule.so.7svn <...> /usr/local/bin/ld.lld: error: undefined symbol: clang::tooling::fixit::internal::getText(clang::SourceRange, clang::ASTContext const&) >>> referenced by UseAutoCheck.cpp >>> tools/clang/tools/extra/clang-tidy/modernize/CMakeFiles/clangTidyModernizeModule.dir/UseAutoCheck.cpp.o:(clang::tidy::modernize::UseAutoCheck::replaceExpr(clang::DeclStmt const*, clang::ASTContext*, llvm::function_ref<clang::QualType (clang::Expr const*)>, llvm::StringRef)) Refs. D45405, rL329730. llvm-svn: 329750
* [clang-tidy][Fuchsia]: don't forget to actually link to Google Module.Roman Lebedev2018-04-101-0/+1
| | | | | | | | | | | | | | | Fixes build for me: [1/7] Linking CXX shared library lib/libclangTidyFuchsiaModule.so.7svn FAILED: lib/libclangTidyFuchsiaModule.so.7svn <...> /usr/local/bin/ld.lld: error: undefined symbol: clang::tidy::google::build::UnnamedNamespaceInHeaderCheck::UnnamedNamespaceInHeaderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*) >>> referenced by FuchsiaTidyModule.cpp >>> tools/clang/tools/extra/clang-tidy/fuchsia/CMakeFiles/clangTidyFuchsiaModule.dir/FuchsiaTidyModule.cpp.o:(std::_Function_handler<clang::tidy::ClangTidyCheck* (llvm::StringRef, clang::tidy::ClangTidyContext*), void clang::tidy::ClangTidyCheckFactories::registerCheck<clang::tidy::google::build::UnnamedNamespaceInHeaderCheck>(llvm::StringRef)::'lambda'(llvm::StringRef, clang::tidy::ClangTidyContext*)>::_M_invoke(std::_Any_data const&, llvm::StringRef&&, clang::tidy::ClangTidyContext*&&)) Refs. D45447, rCTE329720 llvm-svn: 329749
* [Driver] Allow drivers to add multiple libc++ include pathsPetr Hosek2018-04-1021-59/+89
| | | | | | | | | | | This allows toolchain drivers to add multiple libc++ include paths akin to libstdc++. This is useful in multiarch setup when some headers might be in target specific include directory. There should be no functional change. Differential Revision: https://reviews.llvm.org/D45422 llvm-svn: 329748
* [IR] Refactor memset inst classes (NFC)Daniel Neilson2018-04-101-44/+25
| | | | | | | | | | Summary: A simple refactor to remove duplicate code in the definitions of MemSetInst, AtomicMemSetInst, and AnyMemSetInst. Introduce a templated base class that contains all of the methods unique to a memset intrinsic, and derive these three classes from that. llvm-svn: 329747
* Recommit r329716 "Add missing nullptr check before getSection() to ↵Jessica Paquette2018-04-102-0/+19
| | | | | | | | | | | | | AArch64MachObjectWriter::recordRelocation" This commit fixes the bot failures that were coming up before with r329716. The fix was to move the check for "isInSection()" inside of the if condition and emit the error there instead of waiting to get past the unreachable statement. This should work in debug and release builds now. llvm-svn: 329746
* Convert an absolute to a group relative reference for TestOptionArgParser.cpp.Jim Ingham2018-04-101-1/+1
| | | | llvm-svn: 329745
* [IR] Refactor memtransfer inst classes (NFC)Daniel Neilson2018-04-101-109/+46
| | | | | | | | | | | Summary: A simple refactor to remove duplicate code in the definitions of MemTransferInst, AtomicMemTransferInst, and AnyMemTransferInst. Introduce a templated base class that contains all of the methods unique to a memory transfer intrinsic, and derive these three classes from that. llvm-svn: 329744
* [AArch64] Fix isel failure when BUILD_PAIR nodes are left over.Amara Emerson2018-04-102-0/+15
| | | | | | rdar://39175175 llvm-svn: 329743
* [X86] Split up -march=icelake to -client & -serverGabor Buella2018-04-107-11/+26
| | | | | | | | | | Reviewers: craig.topper, zvi, echristo Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D45055 llvm-svn: 329742
* [X86] Split up -march=icelake to -client & -serverGabor Buella2018-04-106-12/+136
| | | | | | | | | | Reviewers: craig.topper, zvi, echristo Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D45056 llvm-svn: 329741
* [clang-tidy] [modernize-use-auto] Fix members initialization orderZinovy Nis2018-04-101-2/+3
| | | | llvm-svn: 329740
* Revert r329684 (and follow-ups 329693, 329714). See discussion on ↵Nico Weber2018-04-1019-234/+55
| | | | | | https://reviews.llvm.org/D43578. llvm-svn: 329739
* [X86] Add test case for llvm change r329734Craig Topper2018-04-101-0/+7
| | | | | | This test ensures the popfd instruction in MS inline assembly can properly find a clobber name for the dirflag register. Previously the register was named 'DF', but it needs to be named 'dirflag' to match the name in the GCC register name list. llvm-svn: 329738
* [CUDA] Added --[no-]cuda-include-ptx=sm_XX|all option.Artem Belevich2018-04-104-0/+78
| | | | | | | | | | | | | | Currently we always include PTX into the fatbin along with the GPU code.It about doubles the size of the GPU binary we need to carry in the executable. These options allow control inclusion of PTX into GPU binary. This patch does not change the defaults, though we may consider making no-PTX the default in the future. Differential Revision: https://reviews.llvm.org/D45495 llvm-svn: 329737
* [InstSimplify] fix formatting; NFCSanjay Patel2018-04-101-7/+7
| | | | llvm-svn: 329736
* [Parser] Fix assertion-on-invalid for unexpected typename.Volodymyr Sapsai2018-04-102-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | In `ParseDeclarationSpecifiers` for the code class A typename A; we were able to annotate token `kw_typename` because it refers to existing type. But later during processing token `annot_typename` we failed to `SetTypeSpecType` and exited switch statement leaving annotation token unconsumed. The code after the switch statement failed because it didn't expect a special token. The fix is not to assume that switch statement consumes all special tokens and consume any token, not just non-special. rdar://problem/37099386 Reviewers: rsmith, arphaman Reviewed By: rsmith Subscribers: jkorous-apple, cfe-commits Differential Revision: https://reviews.llvm.org/D44449 llvm-svn: 329735
* [X86] Change the name string for the newly add DF flag register to 'dirflag' ↵Craig Topper2018-04-101-1/+1
| | | | | | | | | | to match the clobber name supported by clang for MS inline assembly. This should fix the failure found by Chromium reported here https://bugs.chromium.org/p/chromium/issues/detail?id=831158 The test case will be added in clang. llvm-svn: 329734
* [DebugInfoPDB] Add missing test for findSymbolByRVA and findSymbolByAddrAaron Smith2018-04-101-0/+9
| | | | llvm-svn: 329733
* [llvm-mca] reorder textSanjay Patel2018-04-101-9/+9
| | | | | | | On 2nd reading, putting the C example after the bit about multiple regions makes this flow better. llvm-svn: 329732
* [LLVM-C] Add Missing 'break's in InlineAsm bindingsRobert Widmann2018-04-101-0/+2
| | | | | | | | | | | | | | Summary: Noticed by Andrea Di Biagio while reviewing r329369 Reviewers: whitequark, harlanhaskins Reviewed By: harlanhaskins Subscribers: llvm-commits, abergmeier-dsfishlabs Differential Revision: https://reviews.llvm.org/D45496 llvm-svn: 329731
* [clang-tidy] [modernize-use-auto] Add a threshold for minimal type name ↵Zinovy Nis2018-04-108-6/+73
| | | | | | | | | | | | length to be replaced with 'auto' The threshold option is 'MinTypeNameLength' with default value '5'. With MinTypeNameLength == 5 'int'/'bool' and 'const int'/'const bool' will not be converted to 'auto', while 'unsigned' will be. Differential Revision: https://reviews.llvm.org/D45405 llvm-svn: 329730
* [llvm-mca] fix formattingSanjay Patel2018-04-101-8/+8
| | | | llvm-svn: 329729
* Revert 329716 "Add missing nullptr check before getSection() to ↵Jessica Paquette2018-04-102-12/+1
| | | | | | | | AArch64MachObjectWriter::recordRelocation" This broke a bunch of bots so I'm reverting while I figure it out. llvm-svn: 329728
* Fix a typo in the gtest build target for Debug configuration.Jim Ingham2018-04-102-4/+1
| | | | | | I usually run DebugClang... llvm-svn: 329727
* [llvm-mca] add example workflow for source codeSanjay Patel2018-04-101-0/+20
| | | | | | | | | | | | This is copied from Andrea's text in PR36875: https://bugs.llvm.org/show_bug.cgi?id=36875 As noted there, this is a hack...but it's a good one! It's important to show potential workflows up-front with examples, so customers can copy and experiment with them. llvm-svn: 329726
* [clangd] Use operator<< to prevent printers issues in GtestMarc-Andre Laperle2018-04-105-39/+26
| | | | | | | | | | | | | | | | | | | | | | | Summary: It is possible that there will be two different instantiations of the printer template for a given type and some tests could end up calling the wrong (default) one. For example, it was seen in CodeCompleteTests.cpp when printing CompletionItems that it would use the wrong printer because the default is also instantiated in ClangdTests.cpp. With this change, objects that were previously printed with a custom Printer now get printed through the operator<< which is declared alongside the class. This rule of the thumb should make it less error-prone. Reviewers: simark, ilya-biryukov, sammccall Reviewed By: simark, ilya-biryukov, sammccall Subscribers: bkramer, hokein, sammccall, klimek, ilya-biryukov, jkorous-apple, ioeric, MaskRay, cfe-commits Differential Revision: https://reviews.llvm.org/D44764 llvm-svn: 329725
* [DebugInfoPDB] Add DIA implementations of findSymbolByRVA and findSymbolByAddrAaron Smith2018-04-105-9/+56
| | | | llvm-svn: 329724
* Fix test failure in arm64-no-section.llJessica Paquette2018-04-101-2/+2
| | | | | | There was a missing not line. Also, tail call before ret -> call before ret. llvm-svn: 329723
* Fix the Xcode build for the addition of OptionArgsParser.Jim Ingham2018-04-102-5/+18
| | | | llvm-svn: 329722
* [clang-tidy] Adding alias for anon namespaces in header (fuchsia module)Julie Hockett2018-04-105-0/+20
| | | | | | | | | Adding alias to google-build-namespaces to the Fuchsia module (checks for anonymous namespaces in headers). Differential Revision: https://reviews.llvm.org/D45447 llvm-svn: 329720
* [CodeGen] Fix printing bundles in MIR outputKrzysztof Parzyszek2018-04-104-7/+10
| | | | | | | | | | | | | | | | Delay printing the newline until after the opening bracket was printed, e.g. BUNDLE implicit-def $r1, implicit-def $r21, implicit $r1 { renamable $r1 = S2_asr_i_r renamable $r1, 1 renamable $r21 = A2_tfrsi 0 } instead of BUNDLE implicit-def $r1, implicit-def $r21, implicit $r1 { renamable $r1 = S2_asr_i_r renamable $r1, 1 renamable $r21 = A2_tfrsi 0 } llvm-svn: 329719
* Revert r329611, "AArch64: Allow offsets to be folded into addresses with ELF."Peter Collingbourne2018-04-1013-215/+144
| | | | | | Caused a build failure in check-tsan. llvm-svn: 329718
* [WebAssembly] Add support for custom sectionsSam Clegg2018-04-109-1/+140
| | | | | | | | | Copy user-defined custom sections into the output, concatenating sections with the same name. Differential Revision: https://reviews.llvm.org/D45340 llvm-svn: 329717
* Add missing nullptr check to AArch64MachObjectWriter::recordRelocationJessica Paquette2018-04-102-1/+12
| | | | | | | | | | | There was missing nullptr check before a call to getSection() in recordRelocation. This would result in a segfault in code like the attached test. This adds the missing check and a test which makes sure we get the expected error output. llvm-svn: 329716
* AMDGPU/MC: Allow disassembling without symbol infoNicolai Haehnle2018-04-101-0/+3
| | | | | | | | | | | | | | | | | | | | | Summary: We would like the UMR debugging tool[0] to be able to provide disassembly for currently live waves based on plain memory dumps, and we want to leverage the LLVM disassembler for this. This mostly works, except that UMR clearly can't provide real symbol info, so it wants to set DisInfo == nullptr. [0] https://cgit.freedesktop.org/amd/umr/ Reviewers: arsenm, rampitec, artem.tamazov, dp Subscribers: kzhuravl, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits Differential Revision: https://reviews.llvm.org/D45477 Change-Id: Ibb2c5af2e66f2e100b4702fd81308e1932bc4ee6 llvm-svn: 329715
* I removed the failed test.Andrew V. Tischenko2018-04-101-147/+0
| | | | llvm-svn: 329714
* [OpenMP] Remove extra warning when we buildGuansong Zhang2018-04-101-1/+1
| | | | | | | | | | | | | | | | | | | Summary: This one line change is to remove this warning message "warning: integer conversion resulted in a change of sign" Reviewers: grokos Reviewed By: grokos Subscribers: openmp-commits Tags: #openmp Differential Revision: https://reviews.llvm.org/D45415 llvm-svn: 329713
* [PDB] Remove dead code and run clang format; NFCAaron Smith2018-04-104-36/+26
| | | | llvm-svn: 329712
* [llvm-mca] Simplify code. NFCAndrea Di Biagio2018-04-101-30/+18
| | | | llvm-svn: 329711
* [X86] Disable SGX for Skylake Server - CPP testGabor Buella2018-04-101-2/+2
| | | | | | | | | | | | | | Summary: Fix test case - corresponding to r329701 Reviewers: craig.topper, davezarzycki Reviewed By: davezarzycki Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D45488 llvm-svn: 329710
* Fix spelling. NFC.Chad Rosier2018-04-101-2/+2
| | | | llvm-svn: 329709
OpenPOWER on IntegriCloud