r339261 - Fix -Wdocumentation warnings. NFCI.
Author: rksimon Date: Wed Aug 8 08:34:00 2018 New Revision: 339261 URL: http://llvm.org/viewvc/llvm-project?rev=339261&view=rev Log: Fix -Wdocumentation warnings. NFCI. Modified: cfe/trunk/include/clang/Basic/IdentifierTable.h Modified: cfe/trunk/include/clang/Basic/IdentifierTable.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/IdentifierTable.h?rev=339261&r1=339260&r2=339261&view=diff == --- cfe/trunk/include/clang/Basic/IdentifierTable.h (original) +++ cfe/trunk/include/clang/Basic/IdentifierTable.h Wed Aug 8 08:34:00 2018 @@ -50,60 +50,60 @@ using IdentifierLocPair = std::pair *Entry = nullptr; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r339264 - [CGObjCGNU] Rename GetSelector helper method to fix -Woverloaded-virtual warning (PR38210)
Author: rksimon Date: Wed Aug 8 08:53:14 2018 New Revision: 339264 URL: http://llvm.org/viewvc/llvm-project?rev=339264&view=rev Log: [CGObjCGNU] Rename GetSelector helper method to fix -Woverloaded-virtual warning (PR38210) As suggested by @theraven on PR38210, this patch fixes the gcc -Woverloaded-virtual warnings by renaming the extra CGObjCGNU::GetSelector method to CGObjCGNU::GetTypedSelector Differential Revision: https://reviews.llvm.org/D50448 Modified: cfe/trunk/lib/CodeGen/CGObjCGNU.cpp Modified: cfe/trunk/lib/CodeGen/CGObjCGNU.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGObjCGNU.cpp?rev=339264&r1=339263&r2=339264&view=diff == --- cfe/trunk/lib/CodeGen/CGObjCGNU.cpp (original) +++ cfe/trunk/lib/CodeGen/CGObjCGNU.cpp Wed Aug 8 08:53:14 2018 @@ -510,8 +510,8 @@ protected: /// Returns a selector with the specified type encoding. An empty string is /// used to return an untyped selector (with the types field set to NULL). - virtual llvm::Value *GetSelector(CodeGenFunction &CGF, Selector Sel, - const std::string &TypeEncoding); + virtual llvm::Value *GetTypedSelector(CodeGenFunction &CGF, Selector Sel, +const std::string &TypeEncoding); /// Returns the name of ivar offset variables. In the GNUstep v1 ABI, this /// contains the class and ivar names, in the v2 ABI this contains the type @@ -1342,8 +1342,8 @@ class CGObjCGNUstep2 : public CGObjCGNUs return Val; return llvm::ConstantExpr::getBitCast(Val, Ty); } - llvm::Value *GetSelector(CodeGenFunction &CGF, Selector Sel, -const std::string &TypeEncoding) override { + llvm::Value *GetTypedSelector(CodeGenFunction &CGF, Selector Sel, +const std::string &TypeEncoding) override { return GetConstantSelector(Sel, TypeEncoding); } llvm::Constant *GetTypeString(llvm::StringRef TypeEncoding) { @@ -2121,8 +2121,8 @@ llvm::Value *CGObjCGNU::EmitNSAutoreleas return Value; } -llvm::Value *CGObjCGNU::GetSelector(CodeGenFunction &CGF, Selector Sel, -const std::string &TypeEncoding) { +llvm::Value *CGObjCGNU::GetTypedSelector(CodeGenFunction &CGF, Selector Sel, + const std::string &TypeEncoding) { SmallVectorImpl &Types = SelectorTable[Sel]; llvm::GlobalAlias *SelValue = nullptr; @@ -2155,13 +2155,13 @@ Address CGObjCGNU::GetAddrOfSelector(Cod } llvm::Value *CGObjCGNU::GetSelector(CodeGenFunction &CGF, Selector Sel) { - return GetSelector(CGF, Sel, std::string()); + return GetTypedSelector(CGF, Sel, std::string()); } llvm::Value *CGObjCGNU::GetSelector(CodeGenFunction &CGF, const ObjCMethodDecl *Method) { std::string SelTypes = CGM.getContext().getObjCEncodingForMethodDecl(Method); - return GetSelector(CGF, Method->getSelector(), SelTypes); + return GetTypedSelector(CGF, Method->getSelector(), SelTypes); } llvm::Constant *CGObjCGNU::GetEHType(QualType T) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r339557 - Fix MSVC 'std::min: no matching overloaded function found' error.
Author: rksimon Date: Mon Aug 13 05:24:48 2018 New Revision: 339557 URL: http://llvm.org/viewvc/llvm-project?rev=339557&view=rev Log: Fix MSVC 'std::min: no matching overloaded function found' error. Modified: clang-tools-extra/trunk/clangd/index/dex/Trigram.cpp Modified: clang-tools-extra/trunk/clangd/index/dex/Trigram.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/index/dex/Trigram.cpp?rev=339557&r1=339556&r2=339557&view=diff == --- clang-tools-extra/trunk/clangd/index/dex/Trigram.cpp (original) +++ clang-tools-extra/trunk/clangd/index/dex/Trigram.cpp Mon Aug 13 05:24:48 2018 @@ -128,7 +128,8 @@ std::vector generateQueryTrigrams // If the number of symbols which can form fuzzy matching trigram is not // sufficient, generate a single incomplete trigram for query. if (ValidSymbolsCount < 3) { -std::string Chars = LowercaseQuery.substr(0, std::min(3UL, Query.size())); +std::string Chars = +LowercaseQuery.substr(0, std::min(3UL, Query.size())); Chars.append(3 - Chars.size(), END_MARKER); UniqueTrigrams.insert(Token(Token::Kind::Trigram, Chars)); } else { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r339866 - Attempt to fix clangd tests on older compilers
Author: rksimon Date: Thu Aug 16 04:41:19 2018 New Revision: 339866 URL: http://llvm.org/viewvc/llvm-project?rev=339866&view=rev Log: Attempt to fix clangd tests on older compilers Old gcc versions of gcc struggle with raw string literals inside macros. Inspired by rL339759 Modified: clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp Modified: clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp?rev=339866&r1=339865&r2=339866&view=diff == --- clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp (original) +++ clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp Thu Aug 16 04:41:19 2018 @@ -1538,36 +1538,39 @@ TEST(SignatureHelpTest, OverloadsOrderin } TEST(SignatureHelpTest, InstantiatedSignatures) { - EXPECT_THAT(signatures(R"cpp( + StringRef Sig0 = R"cpp( template void foo(T, T, T); int main() { foo(^); } - )cpp") - .signatures, + )cpp"; + + EXPECT_THAT(signatures(Sig0).signatures, ElementsAre(Sig("foo(T, T, T) -> void", {"T", "T", "T"}))); - EXPECT_THAT(signatures(R"cpp( + StringRef Sig1 = R"cpp( template void foo(T, T, T); int main() { foo(10, ^); -})cpp") - .signatures, +})cpp"; + + EXPECT_THAT(signatures(Sig1).signatures, ElementsAre(Sig("foo(T, T, T) -> void", {"T", "T", "T"}))); - EXPECT_THAT(signatures(R"cpp( + StringRef Sig2 = R"cpp( template void foo(T...); int main() { foo(^); } - )cpp") - .signatures, + )cpp"; + + EXPECT_THAT(signatures(Sig2).signatures, ElementsAre(Sig("foo(T...) -> void", {"T..."}))); // It is debatable whether we should substitute the outer template parameter @@ -1575,7 +1578,7 @@ TEST(SignatureHelpTest, InstantiatedSign // do substitute in code complete. // FIXME: make code complete and signature help consistent, figure out which // way is better. - EXPECT_THAT(signatures(R"cpp( + StringRef Sig3 = R"cpp( template struct X { template @@ -1585,8 +1588,9 @@ TEST(SignatureHelpTest, InstantiatedSign int main() { X().foo(^) } - )cpp") - .signatures, + )cpp"; + + EXPECT_THAT(signatures(Sig3).signatures, ElementsAre(Sig("foo(T, U) -> void", {"T", "U"}))); } ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r339879 - Fixed unused variable warning. NFCI.
Author: rksimon Date: Thu Aug 16 06:55:10 2018 New Revision: 339879 URL: http://llvm.org/viewvc/llvm-project?rev=339879&view=rev Log: Fixed unused variable warning. NFCI. Modified: clang-tools-extra/trunk/unittests/clangd/FileDistanceTests.cpp Modified: clang-tools-extra/trunk/unittests/clangd/FileDistanceTests.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/clangd/FileDistanceTests.cpp?rev=339879&r1=339878&r2=339879&view=diff == --- clang-tools-extra/trunk/unittests/clangd/FileDistanceTests.cpp (original) +++ clang-tools-extra/trunk/unittests/clangd/FileDistanceTests.cpp Thu Aug 16 06:55:10 2018 @@ -58,7 +58,8 @@ TEST(FileDistanceTests, BadSource) { EXPECT_EQ(D.distance("b/b/b/c"), 17u); // a+up+down+down+down+down, not b+down } -auto UseUnittestScheme = UnittestSchemeAnchorSource; +// Force the unittest URI scheme to be linked, +static int LLVM_ATTRIBUTE_UNUSED UseUnittestScheme = UnittestSchemeAnchorSource; TEST(FileDistanceTests, URI) { FileDistanceOptions Opts; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r340009 - Fix clangd tests on older compilers
Author: rksimon Date: Fri Aug 17 03:40:05 2018 New Revision: 340009 URL: http://llvm.org/viewvc/llvm-project?rev=340009&view=rev Log: Fix clangd tests on older compilers Old versions of gcc struggle with raw string literals inside macros. Modified: clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp Modified: clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp?rev=340009&r1=340008&r2=340009&view=diff == --- clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp (original) +++ clang-tools-extra/trunk/unittests/clangd/CodeCompleteTests.cpp Fri Aug 17 03:40:05 2018 @@ -1613,22 +1613,21 @@ TEST(SignatureHelpTest, IndexDocumentati Foo1.Detail = &DocDetails; Symbol Foo2 = sym("foo", index::SymbolKind::Function, "@F@\\0#I#I#"); - EXPECT_THAT( - signatures(R"cpp( + StringRef Sig0 = R"cpp( int foo(); int foo(double); void test() { foo(^); } - )cpp", - {Foo0}) - .signatures, + )cpp"; + + EXPECT_THAT( + signatures(Sig0, {Foo0}).signatures, ElementsAre(AllOf(Sig("foo() -> int", {}), SigDoc("Doc from the index")), AllOf(Sig("foo(double) -> int", {"double"}), SigDoc(""; - EXPECT_THAT( - signatures(R"cpp( + StringRef Sig1 = R"cpp( int foo(); // Overriden doc from sema int foo(int); @@ -1638,9 +1637,10 @@ TEST(SignatureHelpTest, IndexDocumentati void test() { foo(^); } - )cpp", - {Foo0, Foo1, Foo2}) - .signatures, + )cpp"; + + EXPECT_THAT( + signatures(Sig1, {Foo0, Foo1, Foo2}).signatures, ElementsAre(AllOf(Sig("foo() -> int", {}), SigDoc("Doc from the index")), AllOf(Sig("foo(int) -> int", {"int"}), SigDoc("Overriden doc from sema")), ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r340394 - Fix Wdocumentation warnings. NFCI.
Author: rksimon Date: Wed Aug 22 03:08:53 2018 New Revision: 340394 URL: http://llvm.org/viewvc/llvm-project?rev=340394&view=rev Log: Fix Wdocumentation warnings. NFCI. Modified: cfe/trunk/include/clang/Lex/Lexer.h cfe/trunk/include/clang/Lex/TokenLexer.h Modified: cfe/trunk/include/clang/Lex/Lexer.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Lex/Lexer.h?rev=340394&r1=340393&r2=340394&view=diff == --- cfe/trunk/include/clang/Lex/Lexer.h (original) +++ cfe/trunk/include/clang/Lex/Lexer.h Wed Aug 22 03:08:53 2018 @@ -711,16 +711,15 @@ private: bool isHexaLiteral(const char *Start, const LangOptions &LangOpts); - /// Read a universal character name. /// - /// \param CurPtr The position in the source buffer after the initial '\'. - /// If the UCN is syntactically well-formed (but not necessarily - /// valid), this parameter will be updated to point to the - /// character after the UCN. + /// \param StartPtr The position in the source buffer after the initial '\'. + /// If the UCN is syntactically well-formed (but not + /// necessarily valid), this parameter will be updated to + /// point to the character after the UCN. /// \param SlashLoc The position in the source buffer of the '\'. - /// \param Tok The token being formed. Pass \c nullptr to suppress diagnostics - ///and handle token formation in the caller. + /// \param Result The token being formed. Pass \c nullptr to suppress + /// diagnostics and handle token formation in the caller. /// /// \return The Unicode codepoint specified by the UCN, or 0 if the UCN is /// invalid. Modified: cfe/trunk/include/clang/Lex/TokenLexer.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Lex/TokenLexer.h?rev=340394&r1=340393&r2=340394&view=diff == --- cfe/trunk/include/clang/Lex/TokenLexer.h (original) +++ cfe/trunk/include/clang/Lex/TokenLexer.h Wed Aug 22 03:08:53 2018 @@ -191,7 +191,7 @@ private: /// them into a string. \p VCtx is used to determine which token represents /// the first __VA_OPT__ replacement token. /// - /// \param[in,out] ReplacementToks - Contains the current Replacement Tokens + /// \param[in,out] ResultToks - Contains the current Replacement Tokens /// (prior to rescanning and token pasting), the tail end of which represents /// the tokens just expanded through __VA_OPT__ processing. These (sub) /// sequence of tokens are folded into one stringified token. ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r331805 - Fix Wdocumentation warning. NFCI.
Author: rksimon Date: Tue May 8 13:24:45 2018 New Revision: 331805 URL: http://llvm.org/viewvc/llvm-project?rev=331805&view=rev Log: Fix Wdocumentation warning. NFCI. Modified: clang-tools-extra/trunk/clang-tidy/ClangTidy.h Modified: clang-tools-extra/trunk/clang-tidy/ClangTidy.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/ClangTidy.h?rev=331805&r1=331804&r2=331805&view=diff == --- clang-tools-extra/trunk/clang-tidy/ClangTidy.h (original) +++ clang-tools-extra/trunk/clang-tidy/ClangTidy.h Tue May 8 13:24:45 2018 @@ -222,8 +222,8 @@ ClangTidyOptions::OptionMap getCheckOpti /// \brief Run a set of clang-tidy checks on a set of files. /// -/// \param Profile if provided, it enables check profile collection in -/// MatchFinder, and will contain the result of the profile. +/// \param EnableCheckProfile If provided, it enables check profile collection +/// in MatchFinder, and will contain the result of the profile. void runClangTidy(clang::tidy::ClangTidyContext &Context, const tooling::CompilationDatabase &Compilations, ArrayRef InputFiles, ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r315149 - Fix signed/unsigned warning
Author: rksimon Date: Sat Oct 7 05:24:10 2017 New Revision: 315149 URL: http://llvm.org/viewvc/llvm-project?rev=315149&view=rev Log: Fix signed/unsigned warning Modified: clang-tools-extra/trunk/clangd/ClangdUnit.cpp Modified: clang-tools-extra/trunk/clangd/ClangdUnit.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/ClangdUnit.cpp?rev=315149&r1=315148&r2=315149&view=diff == --- clang-tools-extra/trunk/clangd/ClangdUnit.cpp (original) +++ clang-tools-extra/trunk/clangd/ClangdUnit.cpp Sat Oct 7 05:24:10 2017 @@ -616,7 +616,7 @@ public: // Right now the overloaded candidates seem to be provided in a "best fit" // order, so I'm not too worried about this. SigHelp.activeSignature = 0; -assert(CurrentArg <= std::numeric_limits::max() && +assert(CurrentArg <= (unsigned)std::numeric_limits::max() && "too many arguments"); SigHelp.activeParameter = static_cast(CurrentArg); for (unsigned I = 0; I < NumCandidates; ++I) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r315314 - Fix a (slightly weird) 'comma operator within array index expression' warning on VS builds. NFCI.
Author: rksimon Date: Tue Oct 10 06:56:17 2017 New Revision: 315314 URL: http://llvm.org/viewvc/llvm-project?rev=315314&view=rev Log: Fix a (slightly weird) 'comma operator within array index expression' warning on VS builds. NFCI. Modified: cfe/trunk/lib/Serialization/ASTReader.cpp Modified: cfe/trunk/lib/Serialization/ASTReader.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Serialization/ASTReader.cpp?rev=315314&r1=315313&r2=315314&view=diff == --- cfe/trunk/lib/Serialization/ASTReader.cpp (original) +++ cfe/trunk/lib/Serialization/ASTReader.cpp Tue Oct 10 06:56:17 2017 @@ -5728,7 +5728,8 @@ void ASTReader::ReadPragmaDiagnosticMapp // Preserve the property that the imaginary root file describes the // current state. - auto &T = Diag.DiagStatesByLoc.Files[FileID()].StateTransitions; + FileID NullFile; + auto &T = Diag.DiagStatesByLoc.Files[NullFile].StateTransitions; if (T.empty()) T.push_back({CurState, 0}); else ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r341362 - Remove lambda default parameter to silence -Wpedantic warning. NFCI.
Author: rksimon Date: Tue Sep 4 05:17:10 2018 New Revision: 341362 URL: http://llvm.org/viewvc/llvm-project?rev=341362&view=rev Log: Remove lambda default parameter to silence -Wpedantic warning. NFCI. Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/CodeComplete.cpp?rev=341362&r1=341361&r2=341362&view=diff == --- clang-tools-extra/trunk/clangd/CodeComplete.cpp (original) +++ clang-tools-extra/trunk/clangd/CodeComplete.cpp Tue Sep 4 05:17:10 2018 @@ -1414,7 +1414,7 @@ private: llvm::DenseMap BundleLookup; auto AddToBundles = [&](const CodeCompletionResult *SemaResult, const Symbol *IndexResult, -bool IsOverride = false) { +bool IsOverride) { CompletionCandidate C; C.SemaResult = SemaResult; C.IndexResult = IndexResult; @@ -1446,7 +1446,7 @@ private: }; // Emit all Sema results, merging them with Index results if possible. for (auto &SemaResult : Recorder->Results) - AddToBundles(&SemaResult, CorrespondingIndexResult(SemaResult)); + AddToBundles(&SemaResult, CorrespondingIndexResult(SemaResult), false); // Handle OverrideResults the same way we deal with SemaResults. Since these // results use the same structs as a SemaResult it is safe to do that, but // we need to make sure we dont' duplicate things in future if Sema starts @@ -1458,7 +1458,7 @@ private: for (const auto &IndexResult : IndexResults) { if (UsedIndexResults.count(&IndexResult)) continue; - AddToBundles(/*SemaResult=*/nullptr, &IndexResult); + AddToBundles(/*SemaResult=*/nullptr, &IndexResult, false); } // We only keep the best N results at any time, in "native" format. TopN Top( ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r341460 - Fix -Wdocumentation warning. NFCI.
Author: rksimon Date: Wed Sep 5 03:44:03 2018 New Revision: 341460 URL: http://llvm.org/viewvc/llvm-project?rev=341460&view=rev Log: Fix -Wdocumentation warning. NFCI. Modified: cfe/trunk/lib/Sema/SemaType.cpp Modified: cfe/trunk/lib/Sema/SemaType.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaType.cpp?rev=341460&r1=341459&r2=341460&view=diff == --- cfe/trunk/lib/Sema/SemaType.cpp (original) +++ cfe/trunk/lib/Sema/SemaType.cpp Wed Sep 5 03:44:03 2018 @@ -6385,7 +6385,7 @@ static NullabilityKind mapNullabilityAtt /// /// \param attr The attribute as written on the type. /// -/// \param allowArrayTypes Whether to accept nullability specifiers on an +/// \param allowOnArrayType Whether to accept nullability specifiers on an /// array type (e.g., because it will decay to a pointer). /// /// \returns true if a problem has been diagnosed, false on success. ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r341556 - Remove unnecessary semicolon to silence -Wpedantic warning. NFCI.
Author: rksimon Date: Thu Sep 6 08:16:17 2018 New Revision: 341556 URL: http://llvm.org/viewvc/llvm-project?rev=341556&view=rev Log: Remove unnecessary semicolon to silence -Wpedantic warning. NFCI. Modified: cfe/trunk/lib/Sema/SemaExceptionSpec.cpp Modified: cfe/trunk/lib/Sema/SemaExceptionSpec.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaExceptionSpec.cpp?rev=341556&r1=341555&r2=341556&view=diff == --- cfe/trunk/lib/Sema/SemaExceptionSpec.cpp (original) +++ cfe/trunk/lib/Sema/SemaExceptionSpec.cpp Thu Sep 6 08:16:17 2018 @@ -238,7 +238,7 @@ static bool exceptionSpecNotKnownYet(con auto EST = MD->getType()->castAs()->getExceptionSpecType(); return EST == EST_Unparsed || (EST == EST_Unevaluated && MD->getParent()->isBeingDefined()); -}; +} static bool CheckEquivalentExceptionSpecImpl( Sema &S, const PartialDiagnostic &DiagID, const PartialDiagnostic &NoteID, ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r341938 - Remove unnecessary semicolon to silence -Wpedantic warning. NFCI.
Author: rksimon Date: Tue Sep 11 06:42:15 2018 New Revision: 341938 URL: http://llvm.org/viewvc/llvm-project?rev=341938&view=rev Log: Remove unnecessary semicolon to silence -Wpedantic warning. NFCI. Modified: clang-tools-extra/trunk/clangd/RIFF.cpp Modified: clang-tools-extra/trunk/clangd/RIFF.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/RIFF.cpp?rev=341938&r1=341937&r2=341938&view=diff == --- clang-tools-extra/trunk/clangd/RIFF.cpp (original) +++ clang-tools-extra/trunk/clangd/RIFF.cpp Tue Sep 11 06:42:15 2018 @@ -37,7 +37,7 @@ Expected readChunk(StringRef &Str Stream = Stream.drop_front(); } return std::move(C); -}; +} raw_ostream &operator<<(raw_ostream &OS, const Chunk &C) { OS.write(C.ID.data(), C.ID.size()); ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r342052 - Fix MSVC "not all control paths return a value" warnings. NFCI.
Author: rksimon Date: Wed Sep 12 05:56:58 2018 New Revision: 342052 URL: http://llvm.org/viewvc/llvm-project?rev=342052&view=rev Log: Fix MSVC "not all control paths return a value" warnings. NFCI. Modified: clang-tools-extra/trunk/clang-doc/MDGenerator.cpp Modified: clang-tools-extra/trunk/clang-doc/MDGenerator.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-doc/MDGenerator.cpp?rev=342052&r1=342051&r2=342052&view=diff == --- clang-tools-extra/trunk/clang-doc/MDGenerator.cpp (original) +++ clang-tools-extra/trunk/clang-doc/MDGenerator.cpp Wed Sep 12 05:56:58 2018 @@ -32,6 +32,7 @@ std::string getAccess(AccessSpecifier AS case AccessSpecifier::AS_none: return {}; } + llvm_unreachable("Unknown AccessSpecifier"); } std::string getTagType(TagTypeKind AS) { @@ -47,6 +48,7 @@ std::string getTagType(TagTypeKind AS) { case TagTypeKind::TTK_Enum: return "enum"; } + llvm_unreachable("Unknown TagTypeKind"); } // Markdown generation ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r342125 - Fix MSVC "illegal conversion; more than one user-defined conversion has been implicitly applied" warning. NFCI.
Author: rksimon Date: Thu Sep 13 03:10:18 2018 New Revision: 342125 URL: http://llvm.org/viewvc/llvm-project?rev=342125&view=rev Log: Fix MSVC "illegal conversion; more than one user-defined conversion has been implicitly applied" warning. NFCI. Modified: cfe/trunk/lib/Driver/Driver.cpp Modified: cfe/trunk/lib/Driver/Driver.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?rev=342125&r1=342124&r2=342125&view=diff == --- cfe/trunk/lib/Driver/Driver.cpp (original) +++ cfe/trunk/lib/Driver/Driver.cpp Thu Sep 13 03:10:18 2018 @@ -4163,7 +4163,7 @@ std::string Driver::GetFilePath(StringRe SmallString<128> P(Dir[0] == '=' ? SysRoot + Dir.substr(1) : Dir); llvm::sys::path::append(P, Name); if (llvm::sys::fs::exists(Twine(P))) -return {P.str()}; +return P.str().str(); } return None; }; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r338238 - Fix -Wdocumentation warning. NFCI.
Author: rksimon Date: Mon Jul 30 03:07:47 2018 New Revision: 338238 URL: http://llvm.org/viewvc/llvm-project?rev=338238&view=rev Log: Fix -Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h Modified: cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h?rev=338238&r1=338237&r2=338238&view=diff == --- cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h (original) +++ cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h Mon Jul 30 03:07:47 2018 @@ -1654,7 +1654,6 @@ extern const internal::VariadicDynCastAl /// - (void) init { /// a = @"hello"; /// } -//} /// \endcode extern const internal::VariadicDynCastAllOfMatcher objcIvarRefExpr; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r338502 - Fix "not all control paths return a value" MSVC warning.
Author: rksimon Date: Wed Aug 1 02:45:21 2018 New Revision: 338502 URL: http://llvm.org/viewvc/llvm-project?rev=338502&view=rev Log: Fix "not all control paths return a value" MSVC warning. Modified: cfe/trunk/include/clang/Analysis/ConstructionContext.h Modified: cfe/trunk/include/clang/Analysis/ConstructionContext.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/ConstructionContext.h?rev=338502&r1=338501&r2=338502&view=diff == --- cfe/trunk/include/clang/Analysis/ConstructionContext.h (original) +++ cfe/trunk/include/clang/Analysis/ConstructionContext.h Wed Aug 1 02:45:21 2018 @@ -57,6 +57,7 @@ public: case ArgumentKind:return "construct into argument"; case InitializerKind: return "construct into member variable"; }; +llvm_unreachable("Unknown ItemKind"); } private: ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r338508 - Replace 'FALL-THROUGH' comment with LLVM_FALLTHROUGH to silence warning. NFCI.
Author: rksimon Date: Wed Aug 1 03:26:04 2018 New Revision: 338508 URL: http://llvm.org/viewvc/llvm-project?rev=338508&view=rev Log: Replace 'FALL-THROUGH' comment with LLVM_FALLTHROUGH to silence warning. NFCI. Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp?rev=338508&r1=338507&r2=338508&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp Wed Aug 1 03:26:04 2018 @@ -253,7 +253,7 @@ std::pair ExprEng State = PreElideState; CallOpts = PreElideCallOpts; } - // FALL-THROUGH + LLVM_FALLTHROUGH } case ConstructionContext::SimpleTemporaryObjectKind: { const auto *TCC = cast(CC); ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r338510 - Add missing semicolon.
Author: rksimon Date: Wed Aug 1 03:34:13 2018 New Revision: 338510 URL: http://llvm.org/viewvc/llvm-project?rev=338510&view=rev Log: Add missing semicolon. Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp?rev=338510&r1=338509&r2=338510&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp Wed Aug 1 03:34:13 2018 @@ -253,7 +253,7 @@ std::pair ExprEng State = PreElideState; CallOpts = PreElideCallOpts; } - LLVM_FALLTHROUGH + LLVM_FALLTHROUGH; } case ConstructionContext::SimpleTemporaryObjectKind: { const auto *TCC = cast(CC); ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r324818 - Add vector add/sub/mul/div by scalar tests (PR27085)
Author: rksimon Date: Sat Feb 10 09:55:23 2018 New Revision: 324818 URL: http://llvm.org/viewvc/llvm-project?rev=324818&view=rev Log: Add vector add/sub/mul/div by scalar tests (PR27085) Ensure the scalar is correctly splatted to all lanes Added: cfe/trunk/test/CodeGen/vector-scalar.c Added: cfe/trunk/test/CodeGen/vector-scalar.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/vector-scalar.c?rev=324818&view=auto == --- cfe/trunk/test/CodeGen/vector-scalar.c (added) +++ cfe/trunk/test/CodeGen/vector-scalar.c Sat Feb 10 09:55:23 2018 @@ -0,0 +1,42 @@ +// RUN: %clang_cc1 -emit-llvm %s -o - | FileCheck %s + +// PR27085 + +typedef unsigned char uchar4 __attribute__ ((vector_size (4))); + +// CHECK: @add2 +// CHECK: add <4 x i8> {{.*}}, +uchar4 add2(uchar4 v) +{ + return v + 2; +} + +// CHECK: @sub2 +// CHECK: sub <4 x i8> {{.*}}, +uchar4 sub2(uchar4 v) +{ + return v - 2; +} + +// CHECK: @mul2 +// CHECK: mul <4 x i8> {{.*}}, +uchar4 mul2(uchar4 v) +{ + return v * 2; +} + +// CHECK: @div2 +// CHECK: udiv <4 x i8> {{.*}}, +uchar4 div2(uchar4 v) +{ + return v / 2; +} + +typedef __attribute__(( ext_vector_type(4) )) unsigned char uchar4_ext; + +// CHECK: @div3_ext +// CHECK: udiv <4 x i8> %{{.*}}, +uchar4_ext div3_ext(uchar4_ext v) +{ + return v / 3; +} ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r325802 - Fix "not all control paths return a value" MSVC warning. NFCI.
Author: rksimon Date: Thu Feb 22 08:12:27 2018 New Revision: 325802 URL: http://llvm.org/viewvc/llvm-project?rev=325802&view=rev Log: Fix "not all control paths return a value" MSVC warning. NFCI. Modified: clang-tools-extra/trunk/clangd/TUScheduler.cpp Modified: clang-tools-extra/trunk/clangd/TUScheduler.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/TUScheduler.cpp?rev=325802&r1=325801&r2=325802&view=diff == --- clang-tools-extra/trunk/clangd/TUScheduler.cpp (original) +++ clang-tools-extra/trunk/clangd/TUScheduler.cpp Thu Feb 22 08:12:27 2018 @@ -342,6 +342,7 @@ bool ASTWorker::shouldSkipHeadLocked() c return true; // Prefer later diagnostics. return false; } + llvm_unreachable("Unknown WantDiagnostics"); } bool ASTWorker::blockUntilIdle(Deadline Timeout) const { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r303734 - Fix 'set but not used' [-Wunused-but-set-variable] warning
Author: rksimon Date: Wed May 24 05:38:09 2017 New Revision: 303734 URL: http://llvm.org/viewvc/llvm-project?rev=303734&view=rev Log: Fix 'set but not used' [-Wunused-but-set-variable] warning Modified: cfe/trunk/lib/Lex/LiteralSupport.cpp Modified: cfe/trunk/lib/Lex/LiteralSupport.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Lex/LiteralSupport.cpp?rev=303734&r1=303733&r2=303734&view=diff == --- cfe/trunk/lib/Lex/LiteralSupport.cpp (original) +++ cfe/trunk/lib/Lex/LiteralSupport.cpp Wed May 24 05:38:09 2017 @@ -563,7 +563,6 @@ NumericLiteralParser::NumericLiteralPars // Parse the suffix. At this point we can classify whether we have an FP or // integer constant. bool isFPConstant = isFloatingLiteral(); - const char *ImaginarySuffixLoc = nullptr; // Loop over all of the characters of the suffix. If we see something bad, // we break out of the loop. @@ -657,7 +656,6 @@ NumericLiteralParser::NumericLiteralPars case 'J': if (isImaginary) break; // Cannot be repeated. isImaginary = true; - ImaginarySuffixLoc = s; continue; // Success. } // If we reached here, there was an error or a ud-suffix. ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r304444 - Remove late nullptr pointer test (PR32447)
Author: rksimon Date: Thu Jun 1 13:13:02 2017 New Revision: 30 URL: http://llvm.org/viewvc/llvm-project?rev=30&view=rev Log: Remove late nullptr pointer test (PR32447) IgnoreNarrowingConversion should never return nullptr, but I've added an assert just in case. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOverload.cpp?rev=30&r1=304443&r2=30&view=diff == --- cfe/trunk/lib/Sema/SemaOverload.cpp (original) +++ cfe/trunk/lib/Sema/SemaOverload.cpp Thu Jun 1 13:13:02 2017 @@ -330,13 +330,13 @@ StandardConversionSequence::getNarrowing } else if (FromType->isIntegralType(Ctx) && ToType->isRealFloatingType()) { llvm::APSInt IntConstantValue; const Expr *Initializer = IgnoreNarrowingConversion(Converted); + assert(Initializer && "Unknown conversion expression"); // If it's value-dependent, we can't tell whether it's narrowing. if (Initializer->isValueDependent()) return NK_Dependent_Narrowing; - if (Initializer && - Initializer->isIntegerConstantExpr(IntConstantValue, Ctx)) { + if (Initializer->isIntegerConstantExpr(IntConstantValue, Ctx)) { // Convert the integer to the floating type. llvm::APFloat Result(Ctx.getFloatTypeSemantics(ToType)); Result.convertFromAPInt(IntConstantValue, IntConstantValue.isSigned(), ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r304445 - Strip trailing whitespace. NFCI.
Author: rksimon Date: Thu Jun 1 13:17:18 2017 New Revision: 304445 URL: http://llvm.org/viewvc/llvm-project?rev=304445&view=rev Log: Strip trailing whitespace. NFCI. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOverload.cpp?rev=304445&r1=30&r2=304445&view=diff == --- cfe/trunk/lib/Sema/SemaOverload.cpp (original) +++ cfe/trunk/lib/Sema/SemaOverload.cpp Thu Jun 1 13:17:18 2017 @@ -49,12 +49,12 @@ static bool functionHasPassObjectSizePar static ExprResult CreateFunctionRefExpr(Sema &S, FunctionDecl *Fn, NamedDecl *FoundDecl, bool HadMultipleCandidates, - SourceLocation Loc = SourceLocation(), + SourceLocation Loc = SourceLocation(), const DeclarationNameLoc &LocInfo = DeclarationNameLoc()){ if (S.DiagnoseUseOfDecl(FoundDecl, Loc)) -return ExprError(); +return ExprError(); // If FoundDecl is different from Fn (such as if one is a template - // and the other a specialization), make sure DiagnoseUseOfDecl is + // and the other a specialization), make sure DiagnoseUseOfDecl is // called on both. // FIXME: This would be more comprehensively addressed by modifying // DiagnoseUseOfDecl to accept both the FoundDecl and the decl @@ -79,7 +79,7 @@ static bool IsStandardConversion(Sema &S bool CStyle, bool AllowObjCWritebackConversion); -static bool IsTransparentUnionStandardConversion(Sema &S, Expr* From, +static bool IsTransparentUnionStandardConversion(Sema &S, Expr* From, QualType &ToType, bool InOverloadResolution, StandardConversionSequence &SCS, @@ -852,7 +852,7 @@ namespace { Expr *Saved; }; SmallVector Entries; - + public: void save(Sema &S, Expr *&E) { assert(E->hasPlaceholderType(BuiltinType::ARCUnbridgedCast)); @@ -863,7 +863,7 @@ namespace { void restore() { for (SmallVectorImpl::iterator - i = Entries.begin(), e = Entries.end(); i != e; ++i) + i = Entries.begin(), e = Entries.end(); i != e; ++i) *i->Addr = i->Saved; } }; @@ -1368,9 +1368,9 @@ Sema::TryImplicitConversion(Expr *From, bool InOverloadResolution, bool CStyle, bool AllowObjCWritebackConversion) { - return ::TryImplicitConversion(*this, From, ToType, + return ::TryImplicitConversion(*this, From, ToType, SuppressUserConversions, AllowExplicit, - InOverloadResolution, CStyle, + InOverloadResolution, CStyle, AllowObjCWritebackConversion, /*AllowObjCConversionOnExplicit=*/false); } @@ -1396,7 +1396,7 @@ Sema::PerformImplicitConversion(Expr *Fr // Objective-C ARC: Determine whether we will allow the writeback conversion. bool AllowObjCWritebackConversion -= getLangOpts().ObjCAutoRefCount && += getLangOpts().ObjCAutoRefCount && (Action == AA_Passing || Action == AA_Sending); if (getLangOpts().ObjC1) CheckObjCBridgeRelatedConversions(From->getLocStart(), @@ -1592,15 +1592,15 @@ static bool IsStandardConversion(Sema &S // if the function type matches except for [[noreturn]], it's ok if (!S.IsFunctionConversion(FromType, S.ExtractUnqualifiedFunctionType(ToType), resultTy)) - // otherwise, only a boolean conversion is standard - if (!ToType->isBooleanType()) -return false; + // otherwise, only a boolean conversion is standard + if (!ToType->isBooleanType()) +return false; } // Check if the "from" expression is taking the address of an overloaded // function and recompute the FromType accordingly. Take advantage of the // fact that non-static member functions *must* have such an address-of - // expression. + // expression. CXXMethodDecl *Method = dyn_cast(Fn); if (Method && !Method->isStatic()) { assert(isa(From->IgnoreParens()) && @@ -1638,7 +1638,7 @@ static bool IsStandardConversion(Sema &S SCS.First = ICK_Lvalue_To_Rvalue; // C11 6.3.2.1p2: -// ... if the lvalue has atomic type, the value has the non-atomic version +// ... if the lvalue has atomic type, the value has the non-atomic version // of the type of the lvalue ... if (const AtomicType *Atomic = FromType->getAs()) FromType = Atomic->getValueType(); @@ -1890,12 +1890,12 @@ static bool I
r304465 - Don't assume that a store source is a vector type just because the destination is (PR26099)
Author: rksimon Date: Thu Jun 1 15:13:34 2017 New Revision: 304465 URL: http://llvm.org/viewvc/llvm-project?rev=304465&view=rev Log: Don't assume that a store source is a vector type just because the destination is (PR26099) Added: cfe/trunk/test/CodeGen/pr26099.c Modified: cfe/trunk/lib/CodeGen/CGExpr.cpp Modified: cfe/trunk/lib/CodeGen/CGExpr.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGExpr.cpp?rev=304465&r1=304464&r2=304465&view=diff == --- cfe/trunk/lib/CodeGen/CGExpr.cpp (original) +++ cfe/trunk/lib/CodeGen/CGExpr.cpp Thu Jun 1 15:13:34 2017 @@ -1487,9 +1487,9 @@ void CodeGenFunction::EmitStoreOfScalar( // Handle vectors differently to get better performance. if (Ty->isVectorType()) { llvm::Type *SrcTy = Value->getType(); - auto *VecTy = cast(SrcTy); + auto *VecTy = dyn_cast(SrcTy); // Handle vec3 special. - if (VecTy->getNumElements() == 3) { + if (VecTy && VecTy->getNumElements() == 3) { // Our source is a vec3, do a shuffle vector to make it a vec4. llvm::Constant *Mask[] = {Builder.getInt32(0), Builder.getInt32(1), Builder.getInt32(2), Added: cfe/trunk/test/CodeGen/pr26099.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/pr26099.c?rev=304465&view=auto == --- cfe/trunk/test/CodeGen/pr26099.c (added) +++ cfe/trunk/test/CodeGen/pr26099.c Thu Jun 1 15:13:34 2017 @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 -ffreestanding %s -triple=i686-apple-darwin -target-feature +mmx -emit-llvm -o - -Wall -Werror +// RUN: %clang_cc1 -ffreestanding %s -triple=x86_64-apple-darwin -target-feature +mmx -emit-llvm -o - -Wall -Werror +// REQUIRES: asserts + +#include + +int __attribute__ ((__vector_size__ (8))) b; + +void bar(int a) +{ + b = __builtin_ia32_vec_init_v2si (0, a); +} \ No newline at end of file ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r304988 - Wdocumentation fix.
Author: rksimon Date: Thu Jun 8 12:01:01 2017 New Revision: 304988 URL: http://llvm.org/viewvc/llvm-project?rev=304988&view=rev Log: Wdocumentation fix. Modified: clang-tools-extra/trunk/clang-tidy/modernize/UseNoexceptCheck.h Modified: clang-tools-extra/trunk/clang-tidy/modernize/UseNoexceptCheck.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/modernize/UseNoexceptCheck.h?rev=304988&r1=304987&r2=304988&view=diff == --- clang-tools-extra/trunk/clang-tidy/modernize/UseNoexceptCheck.h (original) +++ clang-tools-extra/trunk/clang-tidy/modernize/UseNoexceptCheck.h Thu Jun 8 12:01:01 2017 @@ -25,7 +25,7 @@ namespace modernize { /// Is converted to: /// \code /// void foo() ; -//void bar() noexcept(false); +/// void bar() noexcept(false); /// \endcode /// /// For the user-facing documentation see: ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r334091 - Fix MSVC 'implicit double to float truncation and 'not all control paths return a value' warnings. NFCI.
Author: rksimon Date: Wed Jun 6 05:48:27 2018 New Revision: 334091 URL: http://llvm.org/viewvc/llvm-project?rev=334091&view=rev Log: Fix MSVC 'implicit double to float truncation and 'not all control paths return a value' warnings. NFCI. Modified: clang-tools-extra/trunk/clangd/Quality.cpp Modified: clang-tools-extra/trunk/clangd/Quality.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Quality.cpp?rev=334091&r1=334090&r2=334091&view=diff == --- clang-tools-extra/trunk/clangd/Quality.cpp (original) +++ clang-tools-extra/trunk/clangd/Quality.cpp Wed Jun 6 05:48:27 2018 @@ -90,6 +90,7 @@ categorize(const index::SymbolInfo &D) { case index::SymbolKind::Unknown: return SymbolQualitySignals::Unknown; } + llvm_unreachable("Unknown index::SymbolKind") } void SymbolQualitySignals::merge(const CodeCompletionResult &SemaCCResult) { @@ -128,13 +129,13 @@ float SymbolQualitySignals::evaluate() c case Type: case Function: case Variable: - Score *= 1.1; + Score *= 1.1f; break; case Namespace: - Score *= 0.8; + Score *= 0.8f; break; case Macro: - Score *= 0.2; + Score *= 0.2f; break; case Unknown: break; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r334122 - Fix MSVC 'not all control paths return a value' warning. NFCI.
Author: rksimon Date: Wed Jun 6 12:31:39 2018 New Revision: 334122 URL: http://llvm.org/viewvc/llvm-project?rev=334122&view=rev Log: Fix MSVC 'not all control paths return a value' warning. NFCI. Modified: clang-tools-extra/trunk/clang-doc/tool/ClangDocMain.cpp Modified: clang-tools-extra/trunk/clang-doc/tool/ClangDocMain.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-doc/tool/ClangDocMain.cpp?rev=334122&r1=334121&r2=334122&view=diff == --- clang-tools-extra/trunk/clang-doc/tool/ClangDocMain.cpp (original) +++ clang-tools-extra/trunk/clang-doc/tool/ClangDocMain.cpp Wed Jun 6 12:31:39 2018 @@ -139,6 +139,7 @@ std::string getFormatString(OutputFormat case yaml: return "yaml"; } + llvm_unreachable("Unknown OutputFormatTy"); } int main(int argc, const char **argv) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r335209 - Fix double-float constant truncation warnings. NFCI.
Author: rksimon Date: Thu Jun 21 00:54:47 2018 New Revision: 335209 URL: http://llvm.org/viewvc/llvm-project?rev=335209&view=rev Log: Fix double-float constant truncation warnings. NFCI. Modified: clang-tools-extra/trunk/unittests/clangd/QualityTests.cpp Modified: clang-tools-extra/trunk/unittests/clangd/QualityTests.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/clangd/QualityTests.cpp?rev=335209&r1=335208&r2=335209&view=diff == --- clang-tools-extra/trunk/unittests/clangd/QualityTests.cpp (original) +++ clang-tools-extra/trunk/unittests/clangd/QualityTests.cpp Thu Jun 21 00:54:47 2018 @@ -97,13 +97,13 @@ TEST(QualityTests, SymbolRelevanceSignal Relevance = {}; Relevance.merge(CodeCompletionResult(&findDecl(AST, "main"), 42)); - EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 1.0) << "Decl in current file"; + EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 1.0f) << "Decl in current file"; Relevance = {}; Relevance.merge(CodeCompletionResult(&findDecl(AST, "header"), 42)); - EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 0.6) << "Decl from header"; + EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 0.6f) << "Decl from header"; Relevance = {}; Relevance.merge(CodeCompletionResult(&findDecl(AST, "header_main"), 42)); - EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 1.0) + EXPECT_FLOAT_EQ(Relevance.SemaProximityScore, 1.0f) << "Current file and header"; Relevance = {}; @@ -186,7 +186,7 @@ std::string joinPaths(llvm::ArrayRefhttp://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344333 - Fix Wdocumentation warning. NFCI.
Author: rksimon Date: Fri Oct 12 03:34:03 2018 New Revision: 344333 URL: http://llvm.org/viewvc/llvm-project?rev=344333&view=rev Log: Fix Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/AST/DeclTemplate.h Modified: cfe/trunk/include/clang/AST/DeclTemplate.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/DeclTemplate.h?rev=344333&r1=344332&r2=344333&view=diff == --- cfe/trunk/include/clang/AST/DeclTemplate.h (original) +++ cfe/trunk/include/clang/AST/DeclTemplate.h Fri Oct 12 03:34:03 2018 @@ -1093,7 +1093,7 @@ public: /// template. ArrayRef getInjectedTemplateArgs(); - /// Merge our RedeclarableTemplateDecl::Common with \param Prev. + /// Merge \param Prev with our RedeclarableTemplateDecl::Common. void mergePrevDecl(FunctionTemplateDecl *Prev); /// Create a function template node. ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344352 - Fix MSVC 2015 ambiguous symbol warning introduced by rL344337. NFCI.
Author: rksimon Date: Fri Oct 12 08:16:25 2018 New Revision: 344352 URL: http://llvm.org/viewvc/llvm-project?rev=344352&view=rev Log: Fix MSVC 2015 ambiguous symbol warning introduced by rL344337. NFCI. Modified: cfe/trunk/lib/Driver/Compilation.cpp Modified: cfe/trunk/lib/Driver/Compilation.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Compilation.cpp?rev=344352&r1=344351&r2=344352&view=diff == --- cfe/trunk/lib/Driver/Compilation.cpp (original) +++ cfe/trunk/lib/Driver/Compilation.cpp Fri Oct 12 08:16:25 2018 @@ -127,7 +127,7 @@ bool Compilation::CleanupFile(const char return true; } -bool Compilation::CleanupFileList(const ArgStringList &Files, +bool Compilation::CleanupFileList(const llvm::opt::ArgStringList &Files, bool IssueErrors) const { bool Success = true; for (const auto &File: Files) ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344398 - Consistently make llvm::opt::ArgStringList usage explicit to try and appease MSVC 2015 buildbots. NFCI.
Author: rksimon Date: Fri Oct 12 11:55:36 2018 New Revision: 344398 URL: http://llvm.org/viewvc/llvm-project?rev=344398&view=rev Log: Consistently make llvm::opt::ArgStringList usage explicit to try and appease MSVC 2015 buildbots. NFCI. Modified: cfe/trunk/include/clang/Driver/Job.h cfe/trunk/lib/Driver/Job.cpp cfe/trunk/lib/Driver/ToolChains/CrossWindows.cpp Modified: cfe/trunk/include/clang/Driver/Job.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Job.h?rev=344398&r1=344397&r2=344398&view=diff == --- cfe/trunk/include/clang/Driver/Job.h (original) +++ cfe/trunk/include/clang/Driver/Job.h Fri Oct 12 11:55:36 2018 @@ -29,9 +29,6 @@ class Action; class InputInfo; class Tool; -// Re-export this as clang::driver::ArgStringList. -using ArgStringList = llvm::opt::ArgStringList; - struct CrashReportInfo { StringRef Filename; StringRef VFSPath; @@ -135,7 +132,8 @@ public: class FallbackCommand : public Command { public: FallbackCommand(const Action &Source_, const Tool &Creator_, - const char *Executable_, const ArgStringList &Arguments_, + const char *Executable_, + const llvm::opt::ArgStringList &Arguments_, ArrayRef Inputs, std::unique_ptr Fallback_); @@ -153,7 +151,8 @@ private: class ForceSuccessCommand : public Command { public: ForceSuccessCommand(const Action &Source_, const Tool &Creator_, - const char *Executable_, const ArgStringList &Arguments_, + const char *Executable_, + const llvm::opt::ArgStringList &Arguments_, ArrayRef Inputs); void Print(llvm::raw_ostream &OS, const char *Terminator, bool Quote, Modified: cfe/trunk/lib/Driver/Job.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Job.cpp?rev=344398&r1=344397&r2=344398&view=diff == --- cfe/trunk/lib/Driver/Job.cpp (original) +++ cfe/trunk/lib/Driver/Job.cpp Fri Oct 12 11:55:36 2018 @@ -35,7 +35,8 @@ using namespace clang; using namespace driver; Command::Command(const Action &Source, const Tool &Creator, - const char *Executable, const ArgStringList &Arguments, + const char *Executable, + const llvm::opt::ArgStringList &Arguments, ArrayRef Inputs) : Source(Source), Creator(Creator), Executable(Executable), Arguments(Arguments) { @@ -366,7 +367,7 @@ int Command::Execute(ArrayRef Inputs, std::unique_ptr Fallback_) : Command(Source_, Creator_, Executable_, Arguments_, Inputs), @@ -405,11 +406,9 @@ int FallbackCommand::Execute(ArrayRef Inputs) +ForceSuccessCommand::ForceSuccessCommand( +const Action &Source_, const Tool &Creator_, const char *Executable_, +const llvm::opt::ArgStringList &Arguments_, ArrayRef Inputs) : Command(Source_, Creator_, Executable_, Arguments_, Inputs) {} void ForceSuccessCommand::Print(raw_ostream &OS, const char *Terminator, Modified: cfe/trunk/lib/Driver/ToolChains/CrossWindows.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/CrossWindows.cpp?rev=344398&r1=344397&r2=344398&view=diff == --- cfe/trunk/lib/Driver/ToolChains/CrossWindows.cpp (original) +++ cfe/trunk/lib/Driver/ToolChains/CrossWindows.cpp Fri Oct 12 11:55:36 2018 @@ -20,6 +20,7 @@ using namespace clang::driver; using namespace clang::driver::toolchains; using llvm::opt::ArgList; +using llvm::opt::ArgStringList; void tools::CrossWindows::Assembler::ConstructJob( Compilation &C, const JobAction &JA, const InputInfo &Output, ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344400 - Fix a clang::driver::ArgStringList usage I missed in rL344398. NFCI.
Author: rksimon Date: Fri Oct 12 12:14:43 2018 New Revision: 344400 URL: http://llvm.org/viewvc/llvm-project?rev=344400&view=rev Log: Fix a clang::driver::ArgStringList usage I missed in rL344398. NFCI. Modified: cfe/trunk/examples/clang-interpreter/main.cpp Modified: cfe/trunk/examples/clang-interpreter/main.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/examples/clang-interpreter/main.cpp?rev=344400&r1=344399&r2=344400&view=diff == --- cfe/trunk/examples/clang-interpreter/main.cpp (original) +++ cfe/trunk/examples/clang-interpreter/main.cpp Fri Oct 12 12:14:43 2018 @@ -164,7 +164,7 @@ int main(int argc, const char **argv) { } // Initialize a compiler invocation object from the clang (-cc1) arguments. - const driver::ArgStringList &CCArgs = Cmd.getArguments(); + const llvm::opt::ArgStringList &CCArgs = Cmd.getArguments(); std::unique_ptr CI(new CompilerInvocation); CompilerInvocation::CreateFromArgs(*CI, const_cast(CCArgs.data()), ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344408 - Revert rL344365: [tests] Readd Python binding tests to check-all
Author: rksimon Date: Fri Oct 12 12:46:40 2018 New Revision: 344408 URL: http://llvm.org/viewvc/llvm-project?rev=344408&view=rev Log: Revert rL344365: [tests] Readd Python binding tests to check-all Windows buildbots are still not happy Now that both issues found out during the last iteration have been fixed, reenable the Python binding tests on buildbots. Modified: cfe/trunk/bindings/python/tests/CMakeLists.txt Modified: cfe/trunk/bindings/python/tests/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/bindings/python/tests/CMakeLists.txt?rev=344408&r1=344407&r2=344408&view=diff == --- cfe/trunk/bindings/python/tests/CMakeLists.txt (original) +++ cfe/trunk/bindings/python/tests/CMakeLists.txt Fri Oct 12 12:46:40 2018 @@ -7,5 +7,4 @@ add_custom_target(check-clang-python DEPENDS libclang WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..) -set_property(GLOBAL APPEND PROPERTY - LLVM_ADDITIONAL_TEST_TARGETS check-clang-python) +#set_property(GLOBAL APPEND PROPERTY LLVM_ADDITIONAL_TEST_TARGETS check-clang-python) ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344598 - Fix buildbots - update clang-interpreter to use Legacy ORC classes introduced in rL344572.
Author: rksimon Date: Tue Oct 16 02:21:58 2018 New Revision: 344598 URL: http://llvm.org/viewvc/llvm-project?rev=344598&view=rev Log: Fix buildbots - update clang-interpreter to use Legacy ORC classes introduced in rL344572. Modified: cfe/trunk/examples/clang-interpreter/main.cpp Modified: cfe/trunk/examples/clang-interpreter/main.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/examples/clang-interpreter/main.cpp?rev=344598&r1=344597&r2=344598&view=diff == --- cfe/trunk/examples/clang-interpreter/main.cpp (original) +++ cfe/trunk/examples/clang-interpreter/main.cpp Tue Oct 16 02:21:58 2018 @@ -54,8 +54,8 @@ private: std::shared_ptr Resolver; std::unique_ptr TM; const DataLayout DL; - RTDyldObjectLinkingLayer ObjectLayer; - IRCompileLayer CompileLayer; + LegacyRTDyldObjectLinkingLayer ObjectLayer; + LegacyIRCompileLayer CompileLayer; public: SimpleJIT() @@ -75,7 +75,7 @@ public: TM(EngineBuilder().selectTarget()), DL(TM->createDataLayout()), ObjectLayer(ES, [this](VModuleKey) { - return RTDyldObjectLinkingLayer::Resources{ + return LegacyRTDyldObjectLinkingLayer::Resources{ std::make_shared(), Resolver}; }), CompileLayer(ObjectLayer, SimpleCompiler(*TM)) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r344844 - Fix MSVC "not all control paths return a value" warning. NFCI.
Author: rksimon Date: Sat Oct 20 06:18:49 2018 New Revision: 344844 URL: http://llvm.org/viewvc/llvm-project?rev=344844&view=rev Log: Fix MSVC "not all control paths return a value" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/index/FileIndex.cpp Modified: clang-tools-extra/trunk/clangd/index/FileIndex.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/index/FileIndex.cpp?rev=344844&r1=344843&r2=344844&view=diff == --- clang-tools-extra/trunk/clangd/index/FileIndex.cpp (original) +++ clang-tools-extra/trunk/clangd/index/FileIndex.cpp Sat Oct 20 06:18:49 2018 @@ -160,6 +160,7 @@ FileSymbols::buildIndex(IndexType Type, std::move(RefsStorage)), StorageSize, std::move(URISchemes)); } + llvm_unreachable("Unknown clangd::IndexType"); } FileIndex::FileIndex(std::vector URISchemes, bool UseDex) ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r344845 - Fix MSVC "truncation from 'double' to 'float'" warning. NFCI.
Author: rksimon Date: Sat Oct 20 06:20:26 2018 New Revision: 344845 URL: http://llvm.org/viewvc/llvm-project?rev=344845&view=rev Log: Fix MSVC "truncation from 'double' to 'float'" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/Quality.cpp Modified: clang-tools-extra/trunk/clangd/Quality.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Quality.cpp?rev=344845&r1=344844&r2=344845&view=diff == --- clang-tools-extra/trunk/clangd/Quality.cpp (original) +++ clang-tools-extra/trunk/clangd/Quality.cpp Sat Oct 20 06:20:26 2018 @@ -323,7 +323,7 @@ static float scopeBoost(ScopeDistance &D return 1; auto D = Distance.distance(*SymbolScope); if (D == FileDistance::Unreachable) -return 0.4; +return 0.4f; return std::max(0.5, 2.0 * std::pow(0.6, D / 2.0)); } ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r344892 - Fix MSVC "not all control paths return a value" warning. NFCI.
Author: rksimon Date: Mon Oct 22 03:46:37 2018 New Revision: 344892 URL: http://llvm.org/viewvc/llvm-project?rev=344892&view=rev Log: Fix MSVC "not all control paths return a value" warning. NFCI. Modified: cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp?rev=344892&r1=344891&r2=344892&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Core/CoreEngine.cpp Mon Oct 22 03:46:37 2018 @@ -69,6 +69,7 @@ static std::unique_ptr generat case AnalyzerOptions::ExplorationStrategyKind::UnexploredFirstLocationQueue: return WorkList::makeUnexploredFirstPriorityLocationQueue(); } + llvm_unreachable("Unknown AnalyzerOptions::ExplorationStrategyKind"); } CoreEngine::CoreEngine(SubEngine &subengine, FunctionSummariesTy *FS, ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r345184 - Fix MSVC "truncation from 'double' to 'float'" warnings. NFCI.
Author: rksimon Date: Wed Oct 24 12:31:24 2018 New Revision: 345184 URL: http://llvm.org/viewvc/llvm-project?rev=345184&view=rev Log: Fix MSVC "truncation from 'double' to 'float'" warnings. NFCI. Modified: clang-tools-extra/trunk/clangd/Quality.cpp Modified: clang-tools-extra/trunk/clangd/Quality.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Quality.cpp?rev=345184&r1=345183&r2=345184&view=diff == --- clang-tools-extra/trunk/clangd/Quality.cpp (original) +++ clang-tools-extra/trunk/clangd/Quality.cpp Wed Oct 24 12:31:24 2018 @@ -373,15 +373,15 @@ float SymbolRelevanceSignals::evaluate() if (!IsInstanceMember && (Context == CodeCompletionContext::CCC_DotMemberAccess || Context == CodeCompletionContext::CCC_ArrowMemberAccess)) { -Score *= 0.2; +Score *= 0.2f; } if (InBaseClass) -Score *= 0.5; +Score *= 0.5f; // Penalize for FixIts. if (NeedsFixIts) -Score *= 0.5; +Score *= 0.5f; return Score; } ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r351588 - Fix MSVC "not all control paths return a value" warning. NFCI.
Author: rksimon Date: Fri Jan 18 12:40:35 2019 New Revision: 351588 URL: http://llvm.org/viewvc/llvm-project?rev=351588&view=rev Log: Fix MSVC "not all control paths return a value" warning. NFCI. Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp?rev=351588&r1=351587&r2=351588&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp Fri Jan 18 12:40:35 2019 @@ -38,6 +38,7 @@ StringRef RefCountBug::bugTypeToName(Ref case LeakAtReturn: return "Leak of returned object"; } + llvm_unreachable("Unknown RefCountBugType"); } StringRef RefCountBug::getDescription() const { @@ -60,6 +61,7 @@ StringRef RefCountBug::getDescription() case LeakAtReturn: return ""; } + llvm_unreachable("Unknown RefCountBugType"); } RefCountBug::RefCountBug(const CheckerBase *Checker, RefCountBugType BT) ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r351687 - [X86] Replace VPCOM/VPCOMU with generic integer comparisons (clang)
Author: rksimon Date: Sun Jan 20 08:40:33 2019 New Revision: 351687 URL: http://llvm.org/viewvc/llvm-project?rev=351687&view=rev Log: [X86] Replace VPCOM/VPCOMU with generic integer comparisons (clang) These intrinsics can always be replaced with generic integer comparisons without any regression in codegen, even for -O0/-fast-isel cases. Noticed while cleaning up vector integer comparison costs for PR40376. A future commit will remove/autoupgrade the existing VPCOM/VPCOMU llvm intrinsics. Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp cfe/trunk/test/CodeGen/xop-builtins-cmp.c cfe/trunk/test/CodeGen/xop-builtins.c Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBuiltin.cpp?rev=351687&r1=351686&r2=351687&view=diff == --- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original) +++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Sun Jan 20 08:40:33 2019 @@ -9198,6 +9198,46 @@ static Value *EmitX86FunnelShift(CodeGen return CGF.Builder.CreateCall(F, {Op0, Op1, Amt}); } +static Value *EmitX86vpcom(CodeGenFunction &CGF, ArrayRef Ops, + bool IsSigned) { + Value *Op0 = Ops[0]; + Value *Op1 = Ops[1]; + llvm::Type *Ty = Op0->getType(); + uint64_t Imm = cast(Ops[2])->getZExtValue() & 0x7; + + CmpInst::Predicate Pred; + switch (Imm) { + case 0x0: +Pred = IsSigned ? ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT; +break; + case 0x1: +Pred = IsSigned ? ICmpInst::ICMP_SLE : ICmpInst::ICMP_ULE; +break; + case 0x2: +Pred = IsSigned ? ICmpInst::ICMP_SGT : ICmpInst::ICMP_UGT; +break; + case 0x3: +Pred = IsSigned ? ICmpInst::ICMP_SGE : ICmpInst::ICMP_UGE; +break; + case 0x4: +Pred = ICmpInst::ICMP_EQ; +break; + case 0x5: +Pred = ICmpInst::ICMP_NE; +break; + case 0x6: +return llvm::Constant::getNullValue(Ty); // FALSE + case 0x7: +return llvm::Constant::getAllOnesValue(Ty); // TRUE + default: +llvm_unreachable("Unexpected XOP vpcom/vpcomu predicate"); + } + + Value *Cmp = CGF.Builder.CreateICmp(Pred, Op0, Op1); + Value *Res = CGF.Builder.CreateSExt(Cmp, Ty); + return Res; +} + static Value *EmitX86Select(CodeGenFunction &CGF, Value *Mask, Value *Op0, Value *Op1) { @@ -10928,6 +10968,16 @@ Value *CodeGenFunction::EmitX86BuiltinEx unsigned CC = cast(Ops[2])->getZExtValue() & 0x7; return EmitX86MaskedCompare(*this, CC, false, Ops); } + case X86::BI__builtin_ia32_vpcomb: + case X86::BI__builtin_ia32_vpcomw: + case X86::BI__builtin_ia32_vpcomd: + case X86::BI__builtin_ia32_vpcomq: +return EmitX86vpcom(*this, Ops, true); + case X86::BI__builtin_ia32_vpcomub: + case X86::BI__builtin_ia32_vpcomuw: + case X86::BI__builtin_ia32_vpcomud: + case X86::BI__builtin_ia32_vpcomuq: +return EmitX86vpcom(*this, Ops, false); case X86::BI__builtin_ia32_kortestcqi: case X86::BI__builtin_ia32_kortestchi: Modified: cfe/trunk/test/CodeGen/xop-builtins-cmp.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/xop-builtins-cmp.c?rev=351687&r1=351686&r2=351687&view=diff == --- cfe/trunk/test/CodeGen/xop-builtins-cmp.c (original) +++ cfe/trunk/test/CodeGen/xop-builtins-cmp.c Sun Jan 20 08:40:33 2019 @@ -8,49 +8,57 @@ __m128i test_mm_comlt_epu8(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_comlt_epu8 - // CHECK: call <16 x i8> @llvm.x86.xop.vpcomub(<16 x i8> %{{.*}}, <16 x i8> %{{.*}}, i8 0) + // CHECK: icmp ult <16 x i8> %{{.*}}, %{{.*}} + // CHECK: sext <16 x i1> %{{.*}} to <16 x i8> return _mm_comlt_epu8(a, b); } __m128i test_mm_comlt_epu16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_comlt_epu16 - // CHECK: call <8 x i16> @llvm.x86.xop.vpcomuw(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}, i8 0) + // CHECK: icmp ult <8 x i16> %{{.*}}, %{{.*}} + // CHECK: sext <8 x i1> %{{.*}} to <8 x i16> return _mm_comlt_epu16(a, b); } __m128i test_mm_comlt_epu32(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_comlt_epu32 - // CHECK: call <4 x i32> @llvm.x86.xop.vpcomud(<4 x i32> %{{.*}}, <4 x i32> %{{.*}}, i8 0) + // CHECK: icmp ult <4 x i32> %{{.*}}, %{{.*}} + // CHECK: sext <4 x i1> %{{.*}} to <4 x i32> return _mm_comlt_epu32(a, b); } __m128i test_mm_comlt_epu64(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_comlt_epu64 - // CHECK: call <2 x i64> @llvm.x86.xop.vpcomuq(<2 x i64> %{{.*}}, <2 x i64> %{{.*}}, i8 0) + // CHECK: icmp ult <2 x i64> %{{.*}}, %{{.*}} + // CHECK: sext <2 x i1> %{{.*}} to <2 x i64> return _mm_comlt_epu64(a, b); } __m128i test_mm_comlt_epi8(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_comlt_epi8 - // CHECK: call <16 x i8> @llvm.x86.xop.vpcomb(<16 x i8> %{{.*}}, <16 x i8> %{{.*}}, i8 0) + // CHECK: icmp slt <16 x i8> %{{.*}}, %{{.*}} + // CHECK: sext <16 x i1> %{{.*}} to <16 x i8> ret
[clang-tools-extra] r351818 - Fix "missing field 'ClangTidyOpts' initializer" warning. NFCI.
Author: rksimon Date: Tue Jan 22 05:35:16 2019 New Revision: 351818 URL: http://llvm.org/viewvc/llvm-project?rev=351818&view=rev Log: Fix "missing field 'ClangTidyOpts' initializer" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/CodeComplete.cpp?rev=351818&r1=351817&r2=351818&view=diff == --- clang-tools-extra/trunk/clangd/CodeComplete.cpp (original) +++ clang-tools-extra/trunk/clangd/CodeComplete.cpp Tue Jan 22 05:35:16 2019 @@ -1019,8 +1019,9 @@ bool semaCodeComplete(std::unique_ptr VFS = Input.VFS; if (Input.Preamble && Input.Preamble->StatCache) VFS = Input.Preamble->StatCache->getConsumingFS(std::move(VFS)); - auto CI = - buildCompilerInvocation(ParseInputs{Input.Command, VFS, Input.Contents}); + auto CI = buildCompilerInvocation( + ParseInputs{Input.Command, VFS, Input.Contents, + tidy::ClangTidyOptions::getDefaults()}); if (!CI) { elog("Couldn't create CompilerInvocation"); return false; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r352192 - Fix "control reaches end of non-void function" warning. NFCI.
Author: rksimon Date: Fri Jan 25 03:36:51 2019 New Revision: 352192 URL: http://llvm.org/viewvc/llvm-project?rev=352192&view=rev Log: Fix "control reaches end of non-void function" warning. NFCI. Modified: cfe/trunk/lib/AST/ExprObjC.cpp Modified: cfe/trunk/lib/AST/ExprObjC.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ExprObjC.cpp?rev=352192&r1=352191&r2=352192&view=diff == --- cfe/trunk/lib/AST/ExprObjC.cpp (original) +++ cfe/trunk/lib/AST/ExprObjC.cpp Fri Jan 25 03:36:51 2019 @@ -315,6 +315,7 @@ QualType ObjCMessageExpr::getCallReturnT case VK_RValue: return QT; } + llvm_unreachable("Unsupported ExprValueKind"); } SourceRange ObjCMessageExpr::getReceiverRange() const { ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r346549 - Revert rL346454: Fix a use-after-free introduced by r344915.
Author: rksimon Date: Fri Nov 9 11:42:53 2018 New Revision: 346549 URL: http://llvm.org/viewvc/llvm-project?rev=346549&view=rev Log: Revert rL346454: Fix a use-after-free introduced by r344915. r344915 added a call to ApplyDebugLocation to the sanitizer check function emitter. Some of the sanitizers are emitted in the function epilogue though and the LexicalScopeStack is emptied out before. By detecting this situation and early-exiting from ApplyDebugLocation the fallback location is used, which is equivalent to the return location. rdar://problem/45859802 Causes EXPENSIVE_CHECKS build bot failures: http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win Removed: cfe/trunk/test/CodeGen/ubsan-debuglog-return.c Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.cpp?rev=346549&r1=346548&r2=346549&view=diff == --- cfe/trunk/lib/CodeGen/CGDebugInfo.cpp (original) +++ cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Fri Nov 9 11:42:53 2018 @@ -3538,7 +3538,7 @@ void CGDebugInfo::EmitLocation(CGBuilder // Update our current location setLocation(Loc); - if (CurLoc.isInvalid() || CurLoc.isMacroID() || LexicalBlockStack.empty()) + if (CurLoc.isInvalid() || CurLoc.isMacroID()) return; llvm::MDNode *Scope = LexicalBlockStack.back(); Removed: cfe/trunk/test/CodeGen/ubsan-debuglog-return.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/ubsan-debuglog-return.c?rev=346548&view=auto == --- cfe/trunk/test/CodeGen/ubsan-debuglog-return.c (original) +++ cfe/trunk/test/CodeGen/ubsan-debuglog-return.c (removed) @@ -1,10 +0,0 @@ -// RUN: %clang_cc1 -x c -debug-info-kind=line-tables-only -emit-llvm -fsanitize=returns-nonnull-attribute -o - %s | FileCheck %s -// The UBSAN function call in the epilogue needs to have a debug location. - -__attribute__((returns_nonnull)) void *allocate() {} - -// CHECK: define nonnull i8* @allocate(){{.*}} !dbg -// CHECK: call void @__ubsan_handle_nonnull_return_v1_abort -// CHECK-SAME: !dbg ![[LOC:[0-9]+]] -// CHECK: ret i8* -// CHECK-SAME: !dbg ![[LOC]] ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r348262 - Fix "array must be initialized with a brace-enclosed initializer" build error.
Author: rksimon Date: Tue Dec 4 06:07:29 2018 New Revision: 348262 URL: http://llvm.org/viewvc/llvm-project?rev=348262&view=rev Log: Fix "array must be initialized with a brace-enclosed initializer" build error. Try to fix clang-bpf-build buildbot. Modified: clang-tools-extra/trunk/clangd/Headers.h Modified: clang-tools-extra/trunk/clangd/Headers.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Headers.h?rev=348262&r1=348261&r2=348262&view=diff == --- clang-tools-extra/trunk/clangd/Headers.h (original) +++ clang-tools-extra/trunk/clangd/Headers.h Tue Dec 4 06:07:29 2018 @@ -55,7 +55,7 @@ struct IncludeGraphNode { // True if current file is a main file rather than a header. bool IsTU = false; llvm::StringRef URI; - FileDigest Digest{0}; + FileDigest Digest{{0}}; std::vector DirectIncludes; }; // FileURI and FileInclusions are references to keys of the map containing ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r356497 - Fix unused variable warning. NFCI.
Author: rksimon Date: Tue Mar 19 11:39:46 2019 New Revision: 356497 URL: http://llvm.org/viewvc/llvm-project?rev=356497&view=rev Log: Fix unused variable warning. NFCI. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp?rev=356497&r1=356496&r2=356497&view=diff == --- cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp (original) +++ cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp Tue Mar 19 11:39:46 2019 @@ -9744,7 +9744,7 @@ Address CGOpenMPRuntime::getAddressOfLoc llvm::Value *ThreadID = getThreadID(CGF, CVD->getBeginLoc()); llvm::Value *Allocator; if (const Expr *AllocExpr = AA->getAllocator()) { -Allocator = CGF.EmitScalarExpr(AA->getAllocator()); +Allocator = CGF.EmitScalarExpr(AllocExpr); } else { // Default allocator in libomp is nullptr. Allocator = llvm::ConstantPointerNull::get(CGM.VoidPtrPtrTy); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r356543 - Fix -Wdocumentation warning. NFCI.
Author: rksimon Date: Wed Mar 20 03:28:08 2019 New Revision: 356543 URL: http://llvm.org/viewvc/llvm-project?rev=356543&view=rev Log: Fix -Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/Tooling/FixIt.h Modified: cfe/trunk/include/clang/Tooling/FixIt.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Tooling/FixIt.h?rev=356543&r1=356542&r2=356543&view=diff == --- cfe/trunk/include/clang/Tooling/FixIt.h (original) +++ cfe/trunk/include/clang/Tooling/FixIt.h Wed Mar 20 03:28:08 2019 @@ -77,7 +77,7 @@ CharSourceRange getExtendedRange(const T /// if (!x) return foo(); /// // S2: /// if (!x) { return 3; } -//} +/// } /// \endcode /// then /// \code ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r356553 - Revert rL356547 : [clang-tidy] Cosmetic fix
Author: rksimon Date: Wed Mar 20 06:24:33 2019 New Revision: 356553 URL: http://llvm.org/viewvc/llvm-project?rev=356553&view=rev Log: Revert rL356547 : [clang-tidy] Cosmetic fix Differential Revision: https://reviews.llvm.org/D57662 [clang-tidy] Parallelize clang-tidy-diff.py This patch has 2 rationales: - large patches lead to long command lines and often cause max command line length restrictions imposed by OS; - clang-tidy runs on modified files are independent and can be done in parallel, the same as done for run-clang-tidy. Differential Revision: https://reviews.llvm.org/D57662 Reverted to fix buildbot: http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/45547/steps/test/logs/stdio Modified: clang-tools-extra/trunk/clang-tidy/tool/clang-tidy-diff.py Modified: clang-tools-extra/trunk/clang-tidy/tool/clang-tidy-diff.py URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/tool/clang-tidy-diff.py?rev=356553&r1=356552&r2=356553&view=diff == --- clang-tools-extra/trunk/clang-tidy/tool/clang-tidy-diff.py (original) +++ clang-tools-extra/trunk/clang-tidy/tool/clang-tidy-diff.py Wed Mar 20 06:24:33 2019 @@ -24,88 +24,10 @@ Example usage for git/svn users: """ import argparse -import glob import json -import multiprocessing -import os import re -import shutil import subprocess import sys -import tempfile -import threading -import traceback -import yaml - -is_py2 = sys.version[0] == '2' - -if is_py2: -import Queue as queue -else: -import queue as queue - - -def run_tidy(task_queue, lock, timeout): - watchdog = None - while True: -command = task_queue.get() -try: - proc = subprocess.Popen(command, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE) - - if timeout is not None: -watchdog = threading.Timer(timeout, proc.kill) -watchdog.start() - - stdout, stderr = proc.communicate() - - with lock: -sys.stdout.write(stdout.decode('utf-8') + '\n') -if stderr: - sys.stderr.write(stderr.decode('utf-8') + '\n') -except Exception as e: - with lock: -sys.stderr.write('Failed: ' + str(e) + ': '.join(command) + '\n') -finally: - with lock: -if (not timeout is None) and (not watchdog is None): - if not watchdog.is_alive(): - sys.stderr.write('Terminated by timeout: ' + - ' '.join(command) + '\n') - watchdog.cancel() - task_queue.task_done() - - -def start_workers(max_tasks, tidy_caller, task_queue, lock, timeout): - for _ in range(max_tasks): -t = threading.Thread(target=tidy_caller, args=(task_queue, lock, timeout)) -t.daemon = True -t.start() - -def merge_replacement_files(tmpdir, mergefile): - """Merge all replacement files in a directory into a single file""" - # The fixes suggested by clang-tidy >= 4.0.0 are given under - # the top level key 'Diagnostics' in the output yaml files - mergekey = "Diagnostics" - merged = [] - for replacefile in glob.iglob(os.path.join(tmpdir, '*.yaml')): -content = yaml.safe_load(open(replacefile, 'r')) -if not content: - continue # Skip empty files. -merged.extend(content.get(mergekey, [])) - - if merged: -# MainSourceFile: The key is required by the definition inside -# include/clang/Tooling/ReplacementsYaml.h, but the value -# is actually never used inside clang-apply-replacements, -# so we set it to '' here. -output = { 'MainSourceFile': '', mergekey: merged } -with open(mergefile, 'w') as out: - yaml.safe_dump(output, out) - else: -# Empty the file: -open(mergefile, 'w').close() def main(): @@ -126,10 +48,6 @@ def main(): help='custom pattern selecting file paths to check ' '(case insensitive, overridden by -regex)') - parser.add_argument('-j', type=int, default=1, - help='number of tidy instances to be run in parallel.') - parser.add_argument('-timeout', type=int, default=None, - help='timeout per each file in seconds.') parser.add_argument('-fix', action='store_true', default=False, help='apply suggested fixes') parser.add_argument('-checks', @@ -166,7 +84,7 @@ def main(): match = re.search('^\+\+\+\ \"?(.*?/){%s}([^ \t\n\"]*)' % args.p, line) if match: filename = match.group(2) -if filename is None: +if filename == None: continue if args.regex is not None: @@ -184,83 +102,44 @@ def main(): line_count = int(match.group(3)) if line_count == 0: continue - end_line = start_line + line_count - 1 + end_line = start_line + line_count - 1; lines_by_file.setdefault(filename, []).append([start_line, end_line]) -
r356839 - Fix unused variable warning. NFCI.
Author: rksimon Date: Sat Mar 23 09:16:46 2019 New Revision: 356839 URL: http://llvm.org/viewvc/llvm-project?rev=356839&view=rev Log: Fix unused variable warning. NFCI. Modified: cfe/trunk/lib/CodeGen/CGCXX.cpp Modified: cfe/trunk/lib/CodeGen/CGCXX.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGCXX.cpp?rev=356839&r1=356838&r2=356839&view=diff == --- cfe/trunk/lib/CodeGen/CGCXX.cpp (original) +++ cfe/trunk/lib/CodeGen/CGCXX.cpp Sat Mar 23 09:16:46 2019 @@ -222,7 +222,7 @@ llvm::FunctionCallee CodeGenModule::getA bool DontDefer, ForDefinition_t IsForDefinition) { auto *MD = cast(GD.getDecl()); - if (auto *DD = dyn_cast(MD)) { + if (isa(MD)) { // Always alias equivalent complete destructors to base destructors in the // MS ABI. if (getTarget().getCXXABI().isMicrosoft() && ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r357163 - Fix Wdocumentation warning. NFCI.
Author: rksimon Date: Thu Mar 28 05:03:49 2019 New Revision: 357163 URL: http://llvm.org/viewvc/llvm-project?rev=357163&view=rev Log: Fix Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/AST/OpenMPClause.h Modified: cfe/trunk/include/clang/AST/OpenMPClause.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/OpenMPClause.h?rev=357163&r1=357162&r2=357163&view=diff == --- cfe/trunk/include/clang/AST/OpenMPClause.h (original) +++ cfe/trunk/include/clang/AST/OpenMPClause.h Thu Mar 28 05:03:49 2019 @@ -353,7 +353,6 @@ public: /// \param ColonLoc Location of ':' delimiter. /// \param EndLoc Ending location of the clause. /// \param VL List of references to the variables. - /// \param PrivateVL List of references to private copies with initializers. static OMPAllocateClause *Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, Expr *Allocator, SourceLocation ColonLoc, ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r357253 - Fix MSVC "not all control paths return a value" warning. NFCI.
Author: rksimon Date: Fri Mar 29 06:43:00 2019 New Revision: 357253 URL: http://llvm.org/viewvc/llvm-project?rev=357253&view=rev Log: Fix MSVC "not all control paths return a value" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/Protocol.cpp Modified: clang-tools-extra/trunk/clangd/Protocol.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Protocol.cpp?rev=357253&r1=357252&r2=357253&view=diff == --- clang-tools-extra/trunk/clangd/Protocol.cpp (original) +++ clang-tools-extra/trunk/clangd/Protocol.cpp Fri Mar 29 06:43:00 2019 @@ -949,6 +949,7 @@ static const char *toString(OffsetEncodi case OffsetEncoding::UnsupportedEncoding: return "unknown"; } + llvm_unreachable("Unknown clang.clangd.OffsetEncoding"); } llvm::json::Value toJSON(const OffsetEncoding &OE) { return toString(OE); } bool fromJSON(const llvm::json::Value &V, OffsetEncoding &OE) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r357467 - Fix Wimplicit-fallthrough warning introduced in rL357466. NFCI.
Author: rksimon Date: Tue Apr 2 04:25:38 2019 New Revision: 357467 URL: http://llvm.org/viewvc/llvm-project?rev=357467&view=rev Log: Fix Wimplicit-fallthrough warning introduced in rL357466. NFCI. Modified: cfe/trunk/lib/Basic/Targets/PPC.h Modified: cfe/trunk/lib/Basic/Targets/PPC.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets/PPC.h?rev=357467&r1=357466&r2=357467&view=diff == --- cfe/trunk/lib/Basic/Targets/PPC.h (original) +++ cfe/trunk/lib/Basic/Targets/PPC.h Tue Apr 2 04:25:38 2019 @@ -188,6 +188,7 @@ public: // Don't use floating point registers on soft float ABI. if (FloatABI == SoftFloat) return false; + LLVM_FALLTHROUGH; case 'b': // Base register Info.setAllowsRegister(); break; ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r357918 - Revert rL357915 from cfe/trunk: Remove a useless assertion in clang-check.
Author: rksimon Date: Mon Apr 8 08:49:19 2019 New Revision: 357918 URL: http://llvm.org/viewvc/llvm-project?rev=357918&view=rev Log: Revert rL357915 from cfe/trunk: Remove a useless assertion in clang-check. The assertion prevents it from applying fixes when used along with compilation databases with relative paths. Added a test that demonstrates the assertion failure. An example of the assertion: input.cpp:11:14: error: expected ';' after top level declarator typedef int T ^ ; input.cpp:11:14: note: FIX-IT applied suggested code changes clang-check: clang/tools/clang-check/ClangCheck.cpp:94: virtual std::string (anonymous namespace)::FixItOptions::RewriteFilename(const std::string &, int &): Assertion `llvm::sys::path::is_absolute(filename) && "clang-fixit expects absolute paths only."' failed. #0 llvm::sys::PrintStackTrace(llvm::raw_ostream&) llvm/lib/Support/Unix/Signals.inc:494:13 #1 llvm::sys::RunSignalHandlers() llvm/lib/Support/Signals.cpp:69:18 #2 SignalHandler(int) llvm/lib/Support/Unix/Signals.inc:357:1 #3 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0) #4 raise (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf) #5 abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa) #6 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37) #7 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2) #8 void std::__cxx11::basic_string, std::allocator >::_M_construct(char*, char*, std::forward_iterator_tag) #9 void std::__cxx11::basic_string, std::allocator >::_M_construct_aux(char*, char*, std::__false_type) #10 void std::__cxx11::basic_string, std::allocator >::_M_construct(char*, char*) #11 std::__cxx11::basic_string, std::allocator >::basic_string(std::__cxx11::basic_string, std::allocator > const&) #12 (anonymous namespace)::FixItOptions::RewriteFilename(std::__cxx11::basic_string, std::allocator > const&, int&) clang/tools/clang-check/ClangCheck.cpp:101:0 #13 std::__cxx11::basic_string, std::allocator >::_M_data() const #14 std::__cxx11::basic_string, std::allocator >::_M_is_local() const #15 std::__cxx11::basic_string, std::allocator >::_M_dispose() #16 std::__cxx11::basic_string, std::allocator >::~basic_string() #17 clang::FixItRewriter::WriteFixedFiles(std::vector, std::allocator >, std::__cxx11::basic_string, std::allocator > >, std::allocator, std::allocator >, std::__cxx11::basic_string, std::allocator > > > >*) clang/lib/Frontend/Rewrite/FixItRewriter.cpp:98:0 #18 std::__shared_ptr::get() const #19 std::__shared_ptr_access::_M_get() const #20 std::__shared_ptr_access::operator->() const #21 clang::CompilerInstance::getFrontendOpts() clang/include/clang/Frontend/CompilerInstance.h:290:0 #22 clang::FrontendAction::EndSourceFile() clang/lib/Frontend/FrontendAction.cpp:966:0 #23 __gnu_cxx::__normal_iterator > >::operator++() #24 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) clang/lib/Frontend/CompilerInstance.cpp:943:0 #25 clang::tooling::FrontendActionFactory::runInvocation(std::shared_ptr, clang::FileManager*, std::shared_ptr, clang::DiagnosticConsumer*) clang/lib/Tooling/Tooling.cpp:369:33 #26 clang::tooling::ToolInvocation::runInvocation(char const*, clang::driver::Compilation*, std::shared_ptr, std::shared_ptr) clang/lib/Tooling/Tooling.cpp:344:18 #27 clang::tooling::ToolInvocation::run() clang/lib/Tooling/Tooling.cpp:329:10 #28 clang::tooling::ClangTool::run(clang::tooling::ToolAction*) clang/lib/Tooling/Tooling.cpp:518:11 #29 main clang/tools/clang-check/ClangCheck.cpp:187:15 Breaks windows buildbots Removed: cfe/trunk/test/Tooling/clang-check-fixit.cpp Modified: cfe/trunk/tools/clang-check/ClangCheck.cpp Removed: cfe/trunk/test/Tooling/clang-check-fixit.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Tooling/clang-check-fixit.cpp?rev=357917&view=auto == --- cfe/trunk/test/Tooling/clang-check-fixit.cpp (original) +++ cfe/trunk/test/Tooling/clang-check-fixit.cpp (removed) @@ -1,25 +0,0 @@ -// RUN: rm -rf %t -// RUN: mkdir %t -// -// RUN: sed -s 's,^//.*,//,' %s > %t/absolute-fixed.cpp -// RUN: sed -s 's,^//.*,//,' %s > %t/absolute-json.cpp -// RUN: sed -s 's,^//.*,//,' %s > %t/relative-fixed.cpp -// RUN: sed -s 's,^//.*,//,' %s > %t/relative-json.cpp -// -// RUN: clang-check %t/absolute-fixed.cpp -fixit -- 2>&1 | FileCheck %s -// -// RUN: echo '[{ "directory": "%t", \ -// RUN: "command": "/path/to/clang -c %t/absolute-json.cpp", \ -// RUN: "file": "%t/absolute-json.cpp" }]' > %t/compile_commands.json -// RUN: clang-check %t/absolute-json.cpp -fixit 2>&1 | FileCheck %s -// -// RUN: cd %t -// RUN: clang-check relative-fixed.cpp -fixit -- 2>&1 | FileCheck %s -// -// RUN: echo '[{ "directory": "%t", \ -// RUN: "command": "/path/to/clang -c relative-json.cpp", \ -// RUN: "file": "relative-json.cpp" }]' > %t/compile_commands.json -// RUN: clang-check relative-json.cpp -fixit 2>&1 | FileCheck %s -typedef
r358973 - Fix "-Wimplicit-fallthrough" warning. NFCI.
Author: rksimon Date: Tue Apr 23 04:45:28 2019 New Revision: 358973 URL: http://llvm.org/viewvc/llvm-project?rev=358973&view=rev Log: Fix "-Wimplicit-fallthrough" warning. NFCI. Modified: cfe/trunk/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp Modified: cfe/trunk/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp?rev=358973&r1=358972&r2=358973&view=diff == --- cfe/trunk/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp (original) +++ cfe/trunk/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp Tue Apr 23 04:45:28 2019 @@ -90,6 +90,7 @@ void MapExtDefNamesConsumer::addIfInMain case UniqueExternalLinkage: if (SM.isInMainFile(defStart)) Index[LookupName] = CurrentFileName; +break; default: break; } ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r359548 - Fix Wpedantic "default argument specified for lambda parameter" warning. NFCI.
Author: rksimon Date: Tue Apr 30 03:35:37 2019 New Revision: 359548 URL: http://llvm.org/viewvc/llvm-project?rev=359548&view=rev Log: Fix Wpedantic "default argument specified for lambda parameter" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp Modified: clang-tools-extra/trunk/clangd/CodeComplete.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/CodeComplete.cpp?rev=359548&r1=359547&r2=359548&view=diff == --- clang-tools-extra/trunk/clangd/CodeComplete.cpp (original) +++ clang-tools-extra/trunk/clangd/CodeComplete.cpp Tue Apr 30 03:35:37 2019 @@ -1463,7 +1463,7 @@ private: llvm::DenseMap BundleLookup; auto AddToBundles = [&](const CodeCompletionResult *SemaResult, const Symbol *IndexResult, -const RawIdentifier *IdentifierResult = nullptr) { +const RawIdentifier *IdentifierResult) { CompletionCandidate C; C.SemaResult = SemaResult; C.IndexResult = IndexResult; @@ -1502,12 +1502,12 @@ private: }; // Emit all Sema results, merging them with Index results if possible. for (auto &SemaResult : SemaResults) - AddToBundles(&SemaResult, CorrespondingIndexResult(SemaResult)); + AddToBundles(&SemaResult, CorrespondingIndexResult(SemaResult), nullptr); // Now emit any Index-only results. for (const auto &IndexResult : IndexResults) { if (UsedIndexResults.count(&IndexResult)) continue; - AddToBundles(/*SemaResult=*/nullptr, &IndexResult); + AddToBundles(/*SemaResult=*/nullptr, &IndexResult, nullptr); } // Emit identifier results. for (const auto &Ident : IdentifierResults) ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r359550 - Fix gcc "-Wdangling-else" warnings. NFCI.
Author: rksimon Date: Tue Apr 30 03:57:02 2019 New Revision: 359550 URL: http://llvm.org/viewvc/llvm-project?rev=359550&view=rev Log: Fix gcc "-Wdangling-else" warnings. NFCI. Modified: cfe/trunk/unittests/AST/ASTImporterTest.cpp Modified: cfe/trunk/unittests/AST/ASTImporterTest.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/AST/ASTImporterTest.cpp?rev=359550&r1=359549&r2=359550&view=diff == --- cfe/trunk/unittests/AST/ASTImporterTest.cpp (original) +++ cfe/trunk/unittests/AST/ASTImporterTest.cpp Tue Apr 30 03:57:02 2019 @@ -4137,8 +4137,9 @@ struct RedeclChain : ASTImporterOptionSp auto *ToD = LastDeclMatcher().match(ToTU, getPattern()); EXPECT_TRUE(ImportedD == ToD); EXPECT_FALSE(ToD->isThisDeclarationADefinition()); -if (auto *ToT = dyn_cast(ToD)) +if (auto *ToT = dyn_cast(ToD)) { EXPECT_TRUE(ToT->getTemplatedDecl()); +} } void TypedTest_DefinitionShouldBeImportedAsADefinition() { @@ -4152,8 +4153,9 @@ struct RedeclChain : ASTImporterOptionSp EXPECT_EQ(DeclCounter().match(ToTU, getPattern()), 1u); auto *ToD = LastDeclMatcher().match(ToTU, getPattern()); EXPECT_TRUE(ToD->isThisDeclarationADefinition()); -if (auto *ToT = dyn_cast(ToD)) +if (auto *ToT = dyn_cast(ToD)) { EXPECT_TRUE(ToT->getTemplatedDecl()); +} } void TypedTest_ImportPrototypeAfterImportedPrototype() { @@ -4266,8 +4268,9 @@ struct RedeclChain : ASTImporterOptionSp auto *To0 = FirstDeclMatcher().match(ToTU, getPattern()); EXPECT_TRUE(Imported0 == To0); EXPECT_TRUE(To0->isThisDeclarationADefinition()); -if (auto *ToT0 = dyn_cast(To0)) +if (auto *ToT0 = dyn_cast(To0)) { EXPECT_TRUE(ToT0->getTemplatedDecl()); +} } void TypedTest_ImportDefinitionThenPrototype() { ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r359551 - Fix gcc "-Wdangling-else" warning. NFCI.
Author: rksimon Date: Tue Apr 30 03:57:37 2019 New Revision: 359551 URL: http://llvm.org/viewvc/llvm-project?rev=359551&view=rev Log: Fix gcc "-Wdangling-else" warning. NFCI. Modified: cfe/trunk/unittests/Tooling/LookupTest.cpp Modified: cfe/trunk/unittests/Tooling/LookupTest.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Tooling/LookupTest.cpp?rev=359551&r1=359550&r2=359551&view=diff == --- cfe/trunk/unittests/Tooling/LookupTest.cpp (original) +++ cfe/trunk/unittests/Tooling/LookupTest.cpp Tue Apr 30 03:57:37 2019 @@ -217,8 +217,9 @@ TEST(LookupTest, replaceNestedClassName) // `x::y::Foo` in c.cc [1], it should not make "Foo" at [0] ambiguous because // it's not visible at [0]. Visitor.OnRecordTypeLoc = [&](RecordTypeLoc Type) { -if (Type.getDecl()->getQualifiedNameAsString() == "x::y::Old") +if (Type.getDecl()->getQualifiedNameAsString() == "x::y::Old") { EXPECT_EQ("Foo", replaceRecordTypeLoc(Type, "::x::Foo")); +} }; Visitor.runOver(R"( // a.h ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r359796 - Revert rL359778 : [clangd] Fix code completion of macros defined in the preamble region of the main file.
Author: rksimon Date: Thu May 2 08:47:33 2019 New Revision: 359796 URL: http://llvm.org/viewvc/llvm-project?rev=359796&view=rev Log: Revert rL359778 : [clangd] Fix code completion of macros defined in the preamble region of the main file. Summary: This is a tricky case (we baked the assumption that symbols come from the preamble xor mainfile pretty deeply) and the fix is a bit of a hack: We look at the code to guess the macro names, and deserialize them from the preamble "by hand". Reviewers: ilya-biryukov Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D60937 Fix buildbots http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/47684/ Modified: clang-tools-extra/trunk/clangd/ClangdUnit.cpp clang-tools-extra/trunk/clangd/ClangdUnit.h clang-tools-extra/trunk/clangd/CodeComplete.cpp clang-tools-extra/trunk/clangd/index/SymbolCollector.cpp clang-tools-extra/trunk/clangd/unittests/CodeCompleteTests.cpp Modified: clang-tools-extra/trunk/clangd/ClangdUnit.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/ClangdUnit.cpp?rev=359796&r1=359795&r2=359796&view=diff == --- clang-tools-extra/trunk/clangd/ClangdUnit.cpp (original) +++ clang-tools-extra/trunk/clangd/ClangdUnit.cpp Thu May 2 08:47:33 2019 @@ -20,8 +20,6 @@ #include "index/Index.h" #include "clang/AST/ASTContext.h" #include "clang/Basic/LangOptions.h" -#include "clang/Basic/SourceManager.h" -#include "clang/Basic/TokenKinds.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/CompilerInvocation.h" #include "clang/Frontend/FrontendActions.h" @@ -96,36 +94,6 @@ private: std::vector TopLevelDecls; }; -class CollectMainFileMacros : public PPCallbacks { -public: - explicit CollectMainFileMacros(const SourceManager &SM, - std::vector *Out) - : SM(SM), Out(Out) {} - - void FileChanged(SourceLocation Loc, FileChangeReason, - SrcMgr::CharacteristicKind, FileID Prev) { -InMainFile = SM.isWrittenInMainFile(Loc); - } - - void MacroDefined(const Token &MacroName, const MacroDirective *MD) { -assert(MacroName.is(tok::identifier)); -if (InMainFile) - MainFileMacros.insert(MacroName.getIdentifierInfo()->getName()); - } - - void EndOfMainFile() { -for (const auto& Entry : MainFileMacros) - Out->push_back(Entry.getKey()); -llvm::sort(*Out); - } - - private: - const SourceManager &SM; - bool InMainFile = true; - llvm::StringSet<> MainFileMacros; - std::vector *Out; -}; - class CppFilePreambleCallbacks : public PreambleCallbacks { public: CppFilePreambleCallbacks(PathRef File, PreambleParsedCallback ParsedCallback) @@ -135,10 +103,6 @@ public: IncludeStructure takeIncludes() { return std::move(Includes); } - std::vector takeMainFileMacros() { -return std::move(MainFileMacros); - } - CanonicalIncludes takeCanonicalIncludes() { return std::move(CanonIncludes); } void AfterExecute(CompilerInstance &CI) override { @@ -154,9 +118,7 @@ public: std::unique_ptr createPPCallbacks() override { assert(SourceMgr && "SourceMgr must be set at this point"); -return llvm::make_unique( -collectIncludeStructureCallback(*SourceMgr, &Includes), -llvm::make_unique(*SourceMgr, &MainFileMacros)); +return collectIncludeStructureCallback(*SourceMgr, &Includes); } CommentHandler *getCommentHandler() override { @@ -169,7 +131,6 @@ private: PreambleParsedCallback ParsedCallback; IncludeStructure Includes; CanonicalIncludes CanonIncludes; - std::vector MainFileMacros; std::unique_ptr IWYUHandler = nullptr; SourceManager *SourceMgr = nullptr; }; @@ -498,13 +459,11 @@ const CanonicalIncludes &ParsedAST::getC PreambleData::PreambleData(PrecompiledPreamble Preamble, std::vector Diags, IncludeStructure Includes, - std::vector MainFileMacros, std::unique_ptr StatCache, CanonicalIncludes CanonIncludes) : Preamble(std::move(Preamble)), Diags(std::move(Diags)), - Includes(std::move(Includes)), MainFileMacros(std::move(MainFileMacros)), - StatCache(std::move(StatCache)), CanonIncludes(std::move(CanonIncludes)) { -} + Includes(std::move(Includes)), StatCache(std::move(StatCache)), + CanonIncludes(std::move(CanonIncludes)) {} ParsedAST::ParsedAST(std::shared_ptr Preamble, std::unique_ptr Clang, @@ -583,8 +542,7 @@ buildPreamble(PathRef FileName, Compiler std::vector Diags = PreambleDiagnostics.take(); return std::make_shared( std::move(*BuiltPreamble), std::move(Diags), -SerializedDeclsCollector.takeIncludes(), -SerializedDeclsCollector.takeMainFileMacros(), st
r359984 - Revert rL359962 : Use DiagRuntimeBehavior for -Wunsequenced to weed out false positives
Author: rksimon Date: Sun May 5 10:10:05 2019 New Revision: 359984 URL: http://llvm.org/viewvc/llvm-project?rev=359984&view=rev Log: Revert rL359962 : Use DiagRuntimeBehavior for -Wunsequenced to weed out false positives where either the modification or the other access is unreachable. Try to fix buildbots Modified: cfe/trunk/include/clang/Sema/ScopeInfo.h cfe/trunk/include/clang/Sema/Sema.h cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp cfe/trunk/lib/Sema/SemaChecking.cpp cfe/trunk/lib/Sema/SemaExpr.cpp cfe/trunk/test/Sema/warn-unsequenced.c cfe/trunk/test/SemaCXX/warn-unsequenced.cpp Modified: cfe/trunk/include/clang/Sema/ScopeInfo.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/ScopeInfo.h?rev=359984&r1=359983&r2=359984&view=diff == --- cfe/trunk/include/clang/Sema/ScopeInfo.h (original) +++ cfe/trunk/include/clang/Sema/ScopeInfo.h Sun May 5 10:10:05 2019 @@ -84,11 +84,11 @@ class PossiblyUnreachableDiag { public: PartialDiagnostic PD; SourceLocation Loc; - llvm::TinyPtrVector Stmts; + const Stmt *stmt; PossiblyUnreachableDiag(const PartialDiagnostic &PD, SourceLocation Loc, - ArrayRef Stmts) - : PD(PD), Loc(Loc), Stmts(Stmts) {} + const Stmt *stmt) + : PD(PD), Loc(Loc), stmt(stmt) {} }; /// Retains information about a function, method, or block that is Modified: cfe/trunk/include/clang/Sema/Sema.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Sema.h?rev=359984&r1=359983&r2=359984&view=diff == --- cfe/trunk/include/clang/Sema/Sema.h (original) +++ cfe/trunk/include/clang/Sema/Sema.h Sun May 5 10:10:05 2019 @@ -4252,10 +4252,6 @@ public: /// If it is unreachable, the diagnostic will not be emitted. bool DiagRuntimeBehavior(SourceLocation Loc, const Stmt *Statement, const PartialDiagnostic &PD); - /// Similar, but diagnostic is only produced if all the specified statements - /// are reachable. - bool DiagRuntimeBehavior(SourceLocation Loc, ArrayRef Stmts, - const PartialDiagnostic &PD); // Primary Expressions. SourceRange getExprRange(Expr *E) const; Modified: cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp?rev=359984&r1=359983&r2=359984&view=diff == --- cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp (original) +++ cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp Sun May 5 10:10:05 2019 @@ -2089,16 +2089,16 @@ AnalysisBasedWarnings::IssueWarnings(sem // Register the expressions with the CFGBuilder. for (const auto &D : fscope->PossiblyUnreachableDiags) { - for (const Stmt *S : D.Stmts) -AC.registerForcedBlockExpression(S); + if (D.stmt) +AC.registerForcedBlockExpression(D.stmt); } if (AC.getCFG()) { analyzed = true; for (const auto &D : fscope->PossiblyUnreachableDiags) { -bool AllReachable = true; -for (const Stmt *S : D.Stmts) { - const CFGBlock *block = AC.getBlockForRegisteredExpression(S); +bool processed = false; +if (D.stmt) { + const CFGBlock *block = AC.getBlockForRegisteredExpression(D.stmt); CFGReverseBlockReachabilityAnalysis *cra = AC.getCFGReachablityAnalysis(); // FIXME: We should be able to assert that block is non-null, but @@ -2106,17 +2106,15 @@ AnalysisBasedWarnings::IssueWarnings(sem // edge cases; see test/Sema/vla-2.c. if (block && cra) { // Can this block be reached from the entrance? -if (!cra->isReachable(&AC.getCFG()->getEntry(), block)) { - AllReachable = false; - break; -} +if (cra->isReachable(&AC.getCFG()->getEntry(), block)) + S.Diag(D.Loc, D.PD); +processed = true; } - // If we cannot map to a basic block, assume the statement is - // reachable. } - -if (AllReachable) +if (!processed) { + // Emit the warning anyway if we cannot map to a basic block. S.Diag(D.Loc, D.PD); +} } } Modified: cfe/trunk/lib/Sema/SemaChecking.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaChecking.cpp?rev=359984&r1=359983&r2=359984&view=diff == --- cfe/trunk/lib/Sema/SemaChecking.cpp (original) +++ cfe/trunk/lib/Sema/SemaChecking.cpp Sun May 5 10:10:05 2019 @@ -12155,11 +12155,10 @@ class SequenceChecker : public Evaluated if (OtherKind == UK_Use) std::swap(Mod, ModOrUse); -SemaRe
[clang-tools-extra] r343083 - Removed extra semicolon to fix Wpedantic. (NFCI).
Author: rksimon Date: Wed Sep 26 02:02:45 2018 New Revision: 343083 URL: http://llvm.org/viewvc/llvm-project?rev=343083&view=rev Log: Removed extra semicolon to fix Wpedantic. (NFCI). Modified: clang-tools-extra/trunk/clangd/index/IndexAction.cpp Modified: clang-tools-extra/trunk/clangd/index/IndexAction.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/index/IndexAction.cpp?rev=343083&r1=343082&r2=343083&view=diff == --- clang-tools-extra/trunk/clangd/index/IndexAction.cpp (original) +++ clang-tools-extra/trunk/clangd/index/IndexAction.cpp Wed Sep 26 02:02:45 2018 @@ -67,7 +67,7 @@ createStaticIndexingAction(SymbolCollect return llvm::make_unique( std::make_shared(std::move(Opts)), std::move(Includes), IndexOpts, SymbolsCallback); -}; +} } // namespace clangd } // namespace clang ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r343085 - Removed extra semicolon to fix Wpedantic. (NFCI).
Author: rksimon Date: Wed Sep 26 02:12:55 2018 New Revision: 343085 URL: http://llvm.org/viewvc/llvm-project?rev=343085&view=rev Log: Removed extra semicolon to fix Wpedantic. (NFCI). Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp?rev=343085&r1=343084&r2=343085&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp Wed Sep 26 02:12:55 2018 @@ -26,7 +26,7 @@ using namespace clang; using namespace ento; // Associate container objects with a set of raw pointer symbols. -REGISTER_SET_FACTORY_WITH_PROGRAMSTATE(PtrSet, SymbolRef); +REGISTER_SET_FACTORY_WITH_PROGRAMSTATE(PtrSet, SymbolRef) REGISTER_MAP_WITH_PROGRAMSTATE(RawPtrMap, const MemRegion *, PtrSet) ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r343374 - Attempt to fix a -Wdocumentation-html warning. NFCI.
Author: rksimon Date: Sat Sep 29 06:30:43 2018 New Revision: 343374 URL: http://llvm.org/viewvc/llvm-project?rev=343374&view=rev Log: Attempt to fix a -Wdocumentation-html warning. NFCI. Modified: cfe/trunk/include/clang/Lex/CodeCompletionHandler.h Modified: cfe/trunk/include/clang/Lex/CodeCompletionHandler.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Lex/CodeCompletionHandler.h?rev=343374&r1=343373&r2=343374&view=diff == --- cfe/trunk/include/clang/Lex/CodeCompletionHandler.h (original) +++ cfe/trunk/include/clang/Lex/CodeCompletionHandler.h Sat Sep 29 06:30:43 2018 @@ -64,7 +64,7 @@ public: /// Callback invoked when performing code completion inside the filename /// part of an #include directive. (Also #import, #include_next, etc). - /// \p Dir is the directory relative to the include path, e.g. "a" for http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r343846 - Fix llvm-clang-x86_64-expensive-checks-win build by setting bigobj flag.
Author: rksimon Date: Fri Oct 5 05:33:57 2018 New Revision: 343846 URL: http://llvm.org/viewvc/llvm-project?rev=343846&view=rev Log: Fix llvm-clang-x86_64-expensive-checks-win build by setting bigobj flag. Modified: cfe/trunk/lib/Sema/CMakeLists.txt Modified: cfe/trunk/lib/Sema/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/CMakeLists.txt?rev=343846&r1=343845&r2=343846&view=diff == --- cfe/trunk/lib/Sema/CMakeLists.txt (original) +++ cfe/trunk/lib/Sema/CMakeLists.txt Fri Oct 5 05:33:57 2018 @@ -5,6 +5,7 @@ set(LLVM_LINK_COMPONENTS if (MSVC) set_source_files_properties(SemaDeclAttr.cpp PROPERTIES COMPILE_FLAGS /bigobj) set_source_files_properties(SemaExpr.cpp PROPERTIES COMPILE_FLAGS /bigobj) + set_source_files_properties(SemaExprCXX.cpp PROPERTIES COMPILE_FLAGS /bigobj) set_source_files_properties(SemaTemplate.cpp PROPERTIES COMPILE_FLAGS /bigobj) endif() ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r343915 - Wdocumentation fix
Author: rksimon Date: Sat Oct 6 04:12:59 2018 New Revision: 343915 URL: http://llvm.org/viewvc/llvm-project?rev=343915&view=rev Log: Wdocumentation fix Modified: cfe/trunk/include/clang/Lex/CodeCompletionHandler.h Modified: cfe/trunk/include/clang/Lex/CodeCompletionHandler.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Lex/CodeCompletionHandler.h?rev=343915&r1=343914&r2=343915&view=diff == --- cfe/trunk/include/clang/Lex/CodeCompletionHandler.h (original) +++ cfe/trunk/include/clang/Lex/CodeCompletionHandler.h Sat Oct 6 04:12:59 2018 @@ -64,7 +64,7 @@ public: /// Callback invoked when performing code completion inside the filename /// part of an #include directive. (Also #import, #include_next, etc). - /// \p Dir is the directory relative to the include path, e.g. "a" for "http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r343916 - Fix -Wmissing-braces warning. NFCI.
Author: rksimon Date: Sat Oct 6 04:46:27 2018 New Revision: 343916 URL: http://llvm.org/viewvc/llvm-project?rev=343916&view=rev Log: Fix -Wmissing-braces warning. NFCI. Modified: clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp Modified: clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp?rev=343916&r1=343915&r2=343916&view=diff == --- clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp (original) +++ clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp Sat Oct 6 04:46:27 2018 @@ -18,9 +18,9 @@ namespace tidy { namespace modernize { static const std::array DeprecatedTypes = { -"::std::ios_base::io_state", "::std::ios_base::open_mode", -"::std::ios_base::seek_dir", "::std::ios_base::streamoff", -"::std::ios_base::streampos", +{"::std::ios_base::io_state"}, {"::std::ios_base::open_mode"}, +{"::std::ios_base::seek_dir"}, {"::std::ios_base::streamoff"}, +{"::std::ios_base::streampos"}, }; static const llvm::StringMap ReplacementTypes = { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r343917 - Revert rL343916: Fix -Wmissing-braces warning. NFCI.
Author: rksimon Date: Sat Oct 6 04:59:31 2018 New Revision: 343917 URL: http://llvm.org/viewvc/llvm-project?rev=343917&view=rev Log: Revert rL343916: Fix -Wmissing-braces warning. NFCI. Modified: clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp Modified: clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp?rev=343917&r1=343916&r2=343917&view=diff == --- clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp (original) +++ clang-tools-extra/trunk/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp Sat Oct 6 04:59:31 2018 @@ -18,9 +18,9 @@ namespace tidy { namespace modernize { static const std::array DeprecatedTypes = { -{"::std::ios_base::io_state"}, {"::std::ios_base::open_mode"}, -{"::std::ios_base::seek_dir"}, {"::std::ios_base::streamoff"}, -{"::std::ios_base::streampos"}, +"::std::ios_base::io_state", "::std::ios_base::open_mode", +"::std::ios_base::seek_dir", "::std::ios_base::streamoff", +"::std::ios_base::streampos", }; static const llvm::StringMap ReplacementTypes = { ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r352990 - Remove trailing semicolon. NFCI.
Author: rksimon Date: Sun Feb 3 06:08:30 2019 New Revision: 352990 URL: http://llvm.org/viewvc/llvm-project?rev=352990&view=rev Log: Remove trailing semicolon. NFCI. Modified: clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp Modified: clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp?rev=352990&r1=352989&r2=352990&view=diff == --- clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp (original) +++ clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp Sun Feb 3 06:08:30 2019 @@ -53,7 +53,7 @@ CodeAction toCodeAction(const ClangdServ CA.command->tweakArgs->tweakID = T.ID; CA.command->tweakArgs->selection = Selection; return CA; -}; +} void adjustSymbolKinds(llvm::MutableArrayRef Syms, SymbolKindBitset Kinds) { ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r352991 - Remove trailing semicolon. NFCI.
Author: rksimon Date: Sun Feb 3 06:11:32 2019 New Revision: 352991 URL: http://llvm.org/viewvc/llvm-project?rev=352991&view=rev Log: Remove trailing semicolon. NFCI. Modified: clang-tools-extra/trunk/clangd/refactor/tweaks/SwapIfBranches.cpp Modified: clang-tools-extra/trunk/clangd/refactor/tweaks/SwapIfBranches.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/refactor/tweaks/SwapIfBranches.cpp?rev=352991&r1=352990&r2=352991&view=diff == --- clang-tools-extra/trunk/clangd/refactor/tweaks/SwapIfBranches.cpp (original) +++ clang-tools-extra/trunk/clangd/refactor/tweaks/SwapIfBranches.cpp Sun Feb 3 06:11:32 2019 @@ -44,7 +44,7 @@ private: const IfStmt *If = nullptr; }; -REGISTER_TWEAK(SwapIfBranches); +REGISTER_TWEAK(SwapIfBranches) bool SwapIfBranches::prepare(const Selection &Inputs) { for (const SelectionTree::Node *N = Inputs.ASTSelection.commonAncestor(); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r354681 - Fix "not all control paths return" warning. NFCI.
Author: rksimon Date: Fri Feb 22 09:37:59 2019 New Revision: 354681 URL: http://llvm.org/viewvc/llvm-project?rev=354681&view=rev Log: Fix "not all control paths return" warning. NFCI. Modified: cfe/trunk/include/clang/Analysis/AnyCall.h Modified: cfe/trunk/include/clang/Analysis/AnyCall.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/AnyCall.h?rev=354681&r1=354680&r2=354681&view=diff == --- cfe/trunk/include/clang/Analysis/AnyCall.h (original) +++ cfe/trunk/include/clang/Analysis/AnyCall.h Fri Feb 22 09:37:59 2019 @@ -173,6 +173,7 @@ public: case Deallocator: return cast(D)->getReturnType(); } +llvm_unreachable("Unknown AnyCall::Kind"); } /// \returns Function identifier if it is a named declaration, ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r312479 - Fix MSVC narrowing conversion warning.
Author: rksimon Date: Mon Sep 4 03:54:39 2017 New Revision: 312479 URL: http://llvm.org/viewvc/llvm-project?rev=312479&view=rev Log: Fix MSVC narrowing conversion warning. Modified: cfe/trunk/lib/Serialization/ASTWriter.cpp Modified: cfe/trunk/lib/Serialization/ASTWriter.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Serialization/ASTWriter.cpp?rev=312479&r1=312478&r2=312479&view=diff == --- cfe/trunk/lib/Serialization/ASTWriter.cpp (original) +++ cfe/trunk/lib/Serialization/ASTWriter.cpp Mon Sep 4 03:54:39 2017 @@ -2816,7 +2816,7 @@ void ASTWriter::WriteSubmodules(Module * RecordData::value_type Record[] = {SUBMODULE_DEFINITION, ID, ParentID, - Mod->Kind, + (RecordData::value_type)Mod->Kind, Mod->IsFramework, Mod->IsExplicit, Mod->IsSystem, ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r312523 - [X86][AVX512] _mm512_stream_load_si512 should take a void const* argument (PR33977)
Author: rksimon Date: Tue Sep 5 03:06:41 2017 New Revision: 312523 URL: http://llvm.org/viewvc/llvm-project?rev=312523&view=rev Log: [X86][AVX512] _mm512_stream_load_si512 should take a void const* argument (PR33977) Based off the Intel Intrinsics guide, we should expect a void const* argument. Prevents 'passing 'const void *' to parameter of type 'void *' discards qualifiers' warnings. Differential Revision: https://reviews.llvm.org/D37449 Modified: cfe/trunk/lib/Headers/avx512fintrin.h cfe/trunk/test/CodeGen/avx512f-builtins.c Modified: cfe/trunk/lib/Headers/avx512fintrin.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/avx512fintrin.h?rev=312523&r1=312522&r2=312523&view=diff == --- cfe/trunk/lib/Headers/avx512fintrin.h (original) +++ cfe/trunk/lib/Headers/avx512fintrin.h Tue Sep 5 03:06:41 2017 @@ -9040,7 +9040,7 @@ _mm512_stream_si512 (__m512i * __P, __m5 } static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_stream_load_si512 (void *__P) +_mm512_stream_load_si512 (void const *__P) { typedef __v8di __v8di_aligned __attribute__((aligned(64))); return (__m512i) __builtin_nontemporal_load((const __v8di_aligned *)__P); Modified: cfe/trunk/test/CodeGen/avx512f-builtins.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/avx512f-builtins.c?rev=312523&r1=312522&r2=312523&view=diff == --- cfe/trunk/test/CodeGen/avx512f-builtins.c (original) +++ cfe/trunk/test/CodeGen/avx512f-builtins.c Tue Sep 5 03:06:41 2017 @@ -6258,6 +6258,12 @@ __m512i test_mm512_stream_load_si512(voi return _mm512_stream_load_si512(__P); } +__m512i test_mm512_stream_load_si512_const(void const *__P) { + // CHECK-LABEL: @test_mm512_stream_load_si512_const + // CHECK: load <8 x i64>, <8 x i64>* %{{.*}}, align 64, !nontemporal + return _mm512_stream_load_si512(__P); +} + void test_mm512_stream_pd(double *__P, __m512d __A) { // CHECK-LABEL: @test_mm512_stream_pd // CHECK: store <8 x double> %{{.*}}, <8 x double>* %{{.*}}, align 64, !nontemporal ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r312525 - Removed dead code (PR34467). NFCI.
Author: rksimon Date: Tue Sep 5 03:37:13 2017 New Revision: 312525 URL: http://llvm.org/viewvc/llvm-project?rev=312525&view=rev Log: Removed dead code (PR34467). NFCI. The for loop already checks that Idx < NumOfArgs. Modified: cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp Modified: cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp?rev=312525&r1=312524&r2=312525&view=diff == --- cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp (original) +++ cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp Tue Sep 5 03:37:13 2017 @@ -97,9 +97,6 @@ bool CallEvent::hasNonNullArgumentsWithT for (CallEvent::param_type_iterator I = param_type_begin(), E = param_type_end(); I != E && Idx < NumOfArgs; ++I, ++Idx) { -if (NumOfArgs <= Idx) - break; - // If the parameter is 0, it's harmless. if (getArgSVal(Idx).isZeroConstant()) continue; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r313019 - [MS-InlineAsm] Fix cast assertion with vector spills (PR34021)
Author: rksimon Date: Tue Sep 12 04:05:42 2017 New Revision: 313019 URL: http://llvm.org/viewvc/llvm-project?rev=313019&view=rev Log: [MS-InlineAsm] Fix cast assertion with vector spills (PR34021) Differential Revision: https://reviews.llvm.org/D37448 Added: cfe/trunk/test/CodeGen/pr34021.c Modified: cfe/trunk/lib/CodeGen/CGStmt.cpp Modified: cfe/trunk/lib/CodeGen/CGStmt.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGStmt.cpp?rev=313019&r1=313018&r2=313019&view=diff == --- cfe/trunk/lib/CodeGen/CGStmt.cpp (original) +++ cfe/trunk/lib/CodeGen/CGStmt.cpp Tue Sep 12 04:05:42 2017 @@ -2194,7 +2194,7 @@ void CodeGenFunction::EmitAsmStmt(const llvm::IntegerType::get(getLLVMContext(), (unsigned)TmpSize)); Tmp = Builder.CreateTrunc(Tmp, TruncTy); } else if (TruncTy->isIntegerTy()) { -Tmp = Builder.CreateTrunc(Tmp, TruncTy); +Tmp = Builder.CreateZExtOrTrunc(Tmp, TruncTy); } else if (TruncTy->isVectorTy()) { Tmp = Builder.CreateBitCast(Tmp, TruncTy); } Added: cfe/trunk/test/CodeGen/pr34021.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/pr34021.c?rev=313019&view=auto == --- cfe/trunk/test/CodeGen/pr34021.c (added) +++ cfe/trunk/test/CodeGen/pr34021.c Tue Sep 12 04:05:42 2017 @@ -0,0 +1,24 @@ +// RUN: %clang_cc1 -fms-extensions %s -triple=i686-unknown-unknown -emit-llvm -o - | FileCheck %s --check-prefix=X86 +// RUN: %clang_cc1 -fms-extensions %s -triple=x86_64-unknown-unknown -emit-llvm -o - | FileCheck %s --check-prefix=X64 + +typedef int v4si __attribute__ ((vector_size (16))); +v4si rep() { +// X86-LABEL: define <4 x i32> @rep +// X86: %retval = alloca <4 x i32>, align 16 +// X86-NEXT: %res = alloca <4 x i32>, align 16 +// X86-NEXT: %0 = bitcast <4 x i32>* %retval to i128* +// X86-NEXT: %1 = call i64 asm sideeffect inteldialect "", "=A,~{dirflag},~{fpsr},~{flags}"() +// X86-NEXT: %2 = zext i64 %1 to i128 +// X86-NEXT: store i128 %2, i128* %0, align 16 +// X86-NEXT: %3 = load <4 x i32>, <4 x i32>* %res, align 16 +// X86-NEXT: ret <4 x i32> %3 +// +// X64-LABEL: define <4 x i32> @rep +// X64: %res = alloca <4 x i32>, align 16 +// X64-NEXT: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() +// X64-NEXT: %0 = load <4 x i32>, <4 x i32>* %res, align 16 +// X64-NEXT: ret <4 x i32> %0 + v4si res; + __asm {} + return res; +} ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r313024 - Limit test to x86 targets
Author: rksimon Date: Tue Sep 12 05:16:35 2017 New Revision: 313024 URL: http://llvm.org/viewvc/llvm-project?rev=313024&view=rev Log: Limit test to x86 targets Modified: cfe/trunk/test/CodeGen/pr34021.c Modified: cfe/trunk/test/CodeGen/pr34021.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/pr34021.c?rev=313024&r1=313023&r2=313024&view=diff == --- cfe/trunk/test/CodeGen/pr34021.c (original) +++ cfe/trunk/test/CodeGen/pr34021.c Tue Sep 12 05:16:35 2017 @@ -1,3 +1,4 @@ +// REQUIRES: x86-registered-target // RUN: %clang_cc1 -fms-extensions %s -triple=i686-unknown-unknown -emit-llvm -o - | FileCheck %s --check-prefix=X86 // RUN: %clang_cc1 -fms-extensions %s -triple=x86_64-unknown-unknown -emit-llvm -o - | FileCheck %s --check-prefix=X64 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r313034 - Fix PR34021 test on non-x86 build targets
Author: rksimon Date: Tue Sep 12 08:04:04 2017 New Revision: 313034 URL: http://llvm.org/viewvc/llvm-project?rev=313034&view=rev Log: Fix PR34021 test on non-x86 build targets Modified: cfe/trunk/test/CodeGen/pr34021.c Modified: cfe/trunk/test/CodeGen/pr34021.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/pr34021.c?rev=313034&r1=313033&r2=313034&view=diff == --- cfe/trunk/test/CodeGen/pr34021.c (original) +++ cfe/trunk/test/CodeGen/pr34021.c Tue Sep 12 08:04:04 2017 @@ -5,20 +5,20 @@ typedef int v4si __attribute__ ((vector_size (16))); v4si rep() { // X86-LABEL: define <4 x i32> @rep -// X86: %retval = alloca <4 x i32>, align 16 -// X86-NEXT: %res = alloca <4 x i32>, align 16 -// X86-NEXT: %0 = bitcast <4 x i32>* %retval to i128* -// X86-NEXT: %1 = call i64 asm sideeffect inteldialect "", "=A,~{dirflag},~{fpsr},~{flags}"() -// X86-NEXT: %2 = zext i64 %1 to i128 -// X86-NEXT: store i128 %2, i128* %0, align 16 -// X86-NEXT: %3 = load <4 x i32>, <4 x i32>* %res, align 16 -// X86-NEXT: ret <4 x i32> %3 +// X86: %[[ALLOCA0:.*]] = alloca <4 x i32>, align 16 +// X86: %[[ALLOCA1:.*]] = alloca <4 x i32>, align 16 +// X86: %[[BITCAST:.*]] = bitcast <4 x i32>* %[[ALLOCA0]] to i128* +// X86: %[[ASM:.*]] = call i64 asm sideeffect inteldialect "", "=A,~{dirflag},~{fpsr},~{flags}"() +// X86: %[[ZEXT:.*]] = zext i64 %[[ASM]] to i128 +// X86: store i128 %[[ZEXT]], i128* %[[BITCAST]], align 16 +// X86: %[[LOAD:.*]] = load <4 x i32>, <4 x i32>* %[[ALLOCA1]], align 16 +// X86: ret <4 x i32> %[[LOAD]] // // X64-LABEL: define <4 x i32> @rep -// X64: %res = alloca <4 x i32>, align 16 -// X64-NEXT: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() -// X64-NEXT: %0 = load <4 x i32>, <4 x i32>* %res, align 16 -// X64-NEXT: ret <4 x i32> %0 +// X64: %[[ALLOCA:.*]] = alloca <4 x i32>, align 16 +// X64: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() +// X64: %[[LOAD:.*]] = load <4 x i32>, <4 x i32>* %[[ALLOCA]], align 16 +// X64: ret <4 x i32> %[[LOAD]] v4si res; __asm {} return res; ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r313991 - Fix unused variable warning. NFCI.
Author: rksimon Date: Fri Sep 22 09:26:17 2017 New Revision: 313991 URL: http://llvm.org/viewvc/llvm-project?rev=313991&view=rev Log: Fix unused variable warning. NFCI. Modified: cfe/trunk/lib/AST/ItaniumMangle.cpp Modified: cfe/trunk/lib/AST/ItaniumMangle.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ItaniumMangle.cpp?rev=313991&r1=313990&r2=313991&view=diff == --- cfe/trunk/lib/AST/ItaniumMangle.cpp (original) +++ cfe/trunk/lib/AST/ItaniumMangle.cpp Fri Sep 22 09:26:17 2017 @@ -1698,8 +1698,7 @@ void CXXNameMangler::mangleLambda(const = cast(Context)->getIdentifier()) { mangleSourceName(Name); const TemplateArgumentList *TemplateArgs = nullptr; -if (const TemplateDecl *TD = -isTemplate(cast(Context), TemplateArgs)) +if (isTemplate(cast(Context), TemplateArgs)) mangleTemplateArgs(*TemplateArgs); Out << 'M'; } ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r314079 - Fix implicit-fallthrough warning by adding missing break
Author: rksimon Date: Sun Sep 24 08:17:46 2017 New Revision: 314079 URL: http://llvm.org/viewvc/llvm-project?rev=314079&view=rev Log: Fix implicit-fallthrough warning by adding missing break Modified: cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp Modified: cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp?rev=314079&r1=314078&r2=314079&view=diff == --- cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp (original) +++ cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp Sun Sep 24 08:17:46 2017 @@ -185,6 +185,7 @@ void CrossTranslationUnitContext::emitCr case index_error_code::invalid_index_format: Context.getDiagnostics().Report(diag::err_fnmap_parsing) << IE.getFileName() << IE.getLineNum(); +break; case index_error_code::multiple_definitions: Context.getDiagnostics().Report(diag::err_multiple_def_index) << IE.getLineNum(); ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r362076 - Fix MSVC "not all control paths return a value" warning.
Author: rksimon Date: Thu May 30 02:39:45 2019 New Revision: 362076 URL: http://llvm.org/viewvc/llvm-project?rev=362076&view=rev Log: Fix MSVC "not all control paths return a value" warning. Modified: cfe/trunk/include/clang/Basic/ObjCRuntime.h Modified: cfe/trunk/include/clang/Basic/ObjCRuntime.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/ObjCRuntime.h?rev=362076&r1=362075&r2=362076&view=diff == --- cfe/trunk/include/clang/Basic/ObjCRuntime.h (original) +++ cfe/trunk/include/clang/Basic/ObjCRuntime.h Thu May 30 02:39:45 2019 @@ -443,6 +443,7 @@ public: case WatchOS: return true; } +llvm_unreachable("bad kind"); } /// Try to parse an Objective-C runtime specification from the given ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r362085 - Fix Wdocumentation warning. NFCI.
Author: rksimon Date: Thu May 30 03:44:36 2019 New Revision: 362085 URL: http://llvm.org/viewvc/llvm-project?rev=362085&view=rev Log: Fix Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/CheckerManager.h Modified: cfe/trunk/include/clang/StaticAnalyzer/Core/CheckerManager.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/StaticAnalyzer/Core/CheckerManager.h?rev=362085&r1=362084&r2=362085&view=diff == --- cfe/trunk/include/clang/StaticAnalyzer/Core/CheckerManager.h (original) +++ cfe/trunk/include/clang/StaticAnalyzer/Core/CheckerManager.h Thu May 30 03:44:36 2019 @@ -410,7 +410,6 @@ public: /// \param Out The output stream /// \param State The state being printed /// \param NLThe preferred representation of a newline. - /// \param Sep The preferred separator between different messages. /// \param Space The preferred space between the left side and the message. /// \param IsDot Whether the message will be printed in 'dot' format. void runCheckersForPrintStateJson(raw_ostream &Out, ProgramStateRef State, ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r362375 - Revert rL362358 : PR42104: Support instantiations of lambdas that implicitly capture packs.
Author: rksimon Date: Mon Jun 3 02:56:09 2019 New Revision: 362375 URL: http://llvm.org/viewvc/llvm-project?rev=362375&view=rev Log: Revert rL362358 : PR42104: Support instantiations of lambdas that implicitly capture packs. Two changes: * Track odr-use via FunctionParmPackExprs to properly handle dependent odr-uses of packs in generic lambdas. * Do not instantiate implicit captures; instead, regenerate them by instantiating the body of the lambda. This is necessary to distinguish between cases where only one element of a pack is captured and cases where the entire pack is captured. Fixes http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win buildbot failures Removed: cfe/trunk/test/SemaTemplate/lambda-capture-pack.cpp Modified: cfe/trunk/include/clang/Sema/ScopeInfo.h cfe/trunk/include/clang/Sema/Sema.h cfe/trunk/lib/Sema/ScopeInfo.cpp cfe/trunk/lib/Sema/SemaExpr.cpp cfe/trunk/lib/Sema/SemaExprCXX.cpp cfe/trunk/lib/Sema/SemaTemplateInstantiate.cpp cfe/trunk/lib/Sema/TreeTransform.h cfe/trunk/test/SemaCXX/cxx1y-generic-lambdas-capturing.cpp Modified: cfe/trunk/include/clang/Sema/ScopeInfo.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/ScopeInfo.h?rev=362375&r1=362374&r2=362375&view=diff == --- cfe/trunk/include/clang/Sema/ScopeInfo.h (original) +++ cfe/trunk/include/clang/Sema/ScopeInfo.h Mon Jun 3 02:56:09 2019 @@ -15,7 +15,6 @@ #define LLVM_CLANG_SEMA_SCOPEINFO_H #include "clang/AST/Expr.h" -#include "clang/AST/ExprCXX.h" #include "clang/AST/Type.h" #include "clang/Basic/CapturedStmt.h" #include "clang/Basic/LLVM.h" @@ -914,8 +913,7 @@ public: /// }; /// } void addPotentialCapture(Expr *VarExpr) { -assert(isa(VarExpr) || isa(VarExpr) || - isa(VarExpr)); +assert(isa(VarExpr) || isa(VarExpr)); PotentiallyCapturingExprs.push_back(VarExpr); } @@ -967,15 +965,13 @@ public: /// building such a node. So we need a rule that anyone can implement and get /// exactly the same result". void markVariableExprAsNonODRUsed(Expr *CapturingVarExpr) { -assert(isa(CapturingVarExpr) || - isa(CapturingVarExpr) || - isa(CapturingVarExpr)); +assert(isa(CapturingVarExpr) +|| isa(CapturingVarExpr)); NonODRUsedCapturingExprs.insert(CapturingVarExpr); } bool isVariableExprMarkedAsNonODRUsed(Expr *CapturingVarExpr) const { -assert(isa(CapturingVarExpr) || - isa(CapturingVarExpr) || - isa(CapturingVarExpr)); +assert(isa(CapturingVarExpr) + || isa(CapturingVarExpr)); return NonODRUsedCapturingExprs.count(CapturingVarExpr); } void removePotentialCapture(Expr *E) { @@ -997,8 +993,9 @@ public: PotentialThisCaptureLocation.isValid(); } - void visitPotentialCaptures( - llvm::function_ref Callback) const; + // When passed the index, returns the VarDecl and Expr associated + // with the index. + void getPotentialVariableCapture(unsigned Idx, VarDecl *&VD, Expr *&E) const; }; FunctionScopeInfo::WeakObjectProfileTy::WeakObjectProfileTy() Modified: cfe/trunk/include/clang/Sema/Sema.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Sema.h?rev=362375&r1=362374&r2=362375&view=diff == --- cfe/trunk/include/clang/Sema/Sema.h (original) +++ cfe/trunk/include/clang/Sema/Sema.h Mon Jun 3 02:56:09 2019 @@ -4179,7 +4179,6 @@ public: void MarkVariableReferenced(SourceLocation Loc, VarDecl *Var); void MarkDeclRefReferenced(DeclRefExpr *E, const Expr *Base = nullptr); void MarkMemberReferenced(MemberExpr *E); - void MarkFunctionParmPackReferenced(FunctionParmPackExpr *E); void MarkCaptureUsedInEnclosingContext(VarDecl *Capture, SourceLocation Loc, unsigned CapturingScopeIndex); Modified: cfe/trunk/lib/Sema/ScopeInfo.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/ScopeInfo.cpp?rev=362375&r1=362374&r2=362375&view=diff == --- cfe/trunk/lib/Sema/ScopeInfo.cpp (original) +++ cfe/trunk/lib/Sema/ScopeInfo.cpp Mon Jun 3 02:56:09 2019 @@ -229,20 +229,20 @@ bool CapturingScopeInfo::isVLATypeCaptur return false; } -void LambdaScopeInfo::visitPotentialCaptures( -llvm::function_ref Callback) const { - for (Expr *E : PotentiallyCapturingExprs) { -if (auto *DRE = dyn_cast(E)) { - Callback(cast(DRE->getFoundDecl()), E); -} else if (auto *ME = dyn_cast(E)) { - Callback(cast(ME->getMemberDecl()), E); -} else if (auto *FP = dyn_cast(E)) { - for (VarDecl *VD : *FP) -Callback(VD, E); -} else { - llvm_unreachable("unexpected expression in potential captures list"); -} - } +void LambdaScop
[clang-tools-extra] r362489 - Fix Wshadow warning
Author: rksimon Date: Tue Jun 4 04:11:51 2019 New Revision: 362489 URL: http://llvm.org/viewvc/llvm-project?rev=362489&view=rev Log: Fix Wshadow warning Modified: clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp Modified: clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp?rev=362489&r1=362488&r2=362489&view=diff == --- clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp (original) +++ clang-tools-extra/trunk/clangd/ClangdLSPServer.cpp Tue Jun 4 04:11:51 2019 @@ -771,8 +771,8 @@ void ClangdLSPServer::onSignatureHelp(co return Reply(std::move(*Signature)); // Strip out the offsets from signature help for // clients that only support string labels. - for (auto &Signature : Signature->signatures) { -for (auto &Param : Signature.parameters) + for (auto &SigInfo : Signature->signatures) { +for (auto &Param : SigInfo.parameters) Param.labelOffsets.reset(); } return Reply(std::move(*Signature)); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r362491 - Fix -Wparentheses warning. NFCI.
Author: rksimon Date: Tue Jun 4 04:31:45 2019 New Revision: 362491 URL: http://llvm.org/viewvc/llvm-project?rev=362491&view=rev Log: Fix -Wparentheses warning. NFCI. Modified: clang-tools-extra/trunk/clangd/Protocol.cpp Modified: clang-tools-extra/trunk/clangd/Protocol.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/Protocol.cpp?rev=362491&r1=362490&r2=362491&view=diff == --- clang-tools-extra/trunk/clangd/Protocol.cpp (original) +++ clang-tools-extra/trunk/clangd/Protocol.cpp Tue Jun 4 04:31:45 2019 @@ -832,8 +832,8 @@ llvm::json::Value toJSON(const Completio } llvm::json::Value toJSON(const ParameterInformation &PI) { - assert(PI.labelOffsets.hasValue() || - !PI.labelString.empty() && "parameter information label is required"); + assert((PI.labelOffsets.hasValue() || !PI.labelString.empty()) && + "parameter information label is required"); llvm::json::Object Result; if (PI.labelOffsets) Result["label"] = ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r362816 - Revert rL362792 : [Support][Test] Time profiler: add regression test
Author: rksimon Date: Fri Jun 7 10:37:04 2019 New Revision: 362816 URL: http://llvm.org/viewvc/llvm-project?rev=362816&view=rev Log: Revert rL362792 : [Support][Test] Time profiler: add regression test Summary: Add output to `llvm::errs()` when `-ftime-trace` option is enabled, add regression test checking this option works as expected. Reviewers: thakis, aganea Subscribers: cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D61914 Breaks buildbots - @anton-afanasyev please can you take a look? Removed: cfe/trunk/test/Driver/check-time-trace.cpp Modified: cfe/trunk/tools/driver/cc1_main.cpp Removed: cfe/trunk/test/Driver/check-time-trace.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/check-time-trace.cpp?rev=362815&view=auto == --- cfe/trunk/test/Driver/check-time-trace.cpp (original) +++ cfe/trunk/test/Driver/check-time-trace.cpp (removed) @@ -1,23 +0,0 @@ -// RUN: %clangxx -ftime-trace %s 2>&1 | grep "Time trace json-file dumped to" \ -// RUN: | awk '{print $NF}' | xargs cat \ -// RUN: | %python -c 'import json, sys; json.dump(json.loads(sys.stdin.read()), sys.stdout, sort_keys=True, indent=2)' \ -// RUN: | FileCheck %s - -// CHECK: "traceEvents": [ -// CHECK: "args": -// CHECK: "detail": -// CHECK: "dur": -// CHECK: "name": "Source" -// CHECK-NEXT: "ph": -// CHECK-NEXT: "pid": -// CHECK-NEXT: "tid": -// CHECK-NEXT: "ts": -// CHECK: "name": "clang" -// CHECK: "name": "process_name" - -#include - -int main() { - std::cout << "Foo" << std::endl; - return 0; -} Modified: cfe/trunk/tools/driver/cc1_main.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/driver/cc1_main.cpp?rev=362816&r1=362815&r2=362816&view=diff == --- cfe/trunk/tools/driver/cc1_main.cpp (original) +++ cfe/trunk/tools/driver/cc1_main.cpp Fri Jun 7 10:37:04 2019 @@ -241,11 +241,6 @@ int cc1_main(ArrayRef Argv llvm::timeTraceProfilerWrite(*profilerOutput); llvm::timeTraceProfilerCleanup(); - -llvm::errs() << "Time trace json-file dumped to " << Path.str() << "\n"; -llvm::errs() -<< "Use chrome://tracing or Speedscope App " - "(https://www.speedscope.app) for flamegraph visualization\n"; } // Our error handler depends on the Diagnostics object, which we're ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r363824 - Revert rL363684 : AMDGPU: Add GWS instruction builtins
Author: rksimon Date: Wed Jun 19 08:35:45 2019 New Revision: 363824 URL: http://llvm.org/viewvc/llvm-project?rev=363824&view=rev Log: Revert rL363684 : AMDGPU: Add GWS instruction builtins Depends on rL363678 which was reverted at rL363797 Modified: cfe/trunk/include/clang/Basic/BuiltinsAMDGPU.def cfe/trunk/test/CodeGenOpenCL/builtins-amdgcn.cl Modified: cfe/trunk/include/clang/Basic/BuiltinsAMDGPU.def URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/BuiltinsAMDGPU.def?rev=363824&r1=363823&r2=363824&view=diff == --- cfe/trunk/include/clang/Basic/BuiltinsAMDGPU.def (original) +++ cfe/trunk/include/clang/Basic/BuiltinsAMDGPU.def Wed Jun 19 08:35:45 2019 @@ -45,8 +45,6 @@ BUILTIN(__builtin_amdgcn_s_barrier, "v", BUILTIN(__builtin_amdgcn_wave_barrier, "v", "n") BUILTIN(__builtin_amdgcn_s_dcache_inv, "v", "n") BUILTIN(__builtin_amdgcn_buffer_wbinvl1, "v", "n") -BUILTIN(__builtin_amdgcn_ds_gws_init, "vUiUi", "n") -BUILTIN(__builtin_amdgcn_ds_gws_barrier, "vUiUi", "n") // FIXME: Need to disallow constant address space. BUILTIN(__builtin_amdgcn_div_scale, "dddbb*", "n") Modified: cfe/trunk/test/CodeGenOpenCL/builtins-amdgcn.cl URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenOpenCL/builtins-amdgcn.cl?rev=363824&r1=363823&r2=363824&view=diff == --- cfe/trunk/test/CodeGenOpenCL/builtins-amdgcn.cl (original) +++ cfe/trunk/test/CodeGenOpenCL/builtins-amdgcn.cl Wed Jun 19 08:35:45 2019 @@ -548,18 +548,6 @@ kernel void test_ds_consume_lds(global i *out = __builtin_amdgcn_ds_consume(ptr); } -// CHECK-LABEL: @test_gws_init( -// CHECK: call void @llvm.amdgcn.ds.gws.init(i32 %value, i32 %id) -kernel void test_gws_init(uint value, uint id) { - __builtin_amdgcn_ds_gws_init(value, id); -} - -// CHECK-LABEL: @test_gws_barrier( -// CHECK: call void @llvm.amdgcn.ds.gws.barrier(i32 %value, i32 %id) -kernel void test_gws_barrier(uint value, uint id) { - __builtin_amdgcn_ds_gws_barrier(value, id); -} - // CHECK-DAG: [[$WI_RANGE]] = !{i32 0, i32 1024} // CHECK-DAG: attributes #[[$NOUNWIND_READONLY:[0-9]+]] = { nounwind readonly } // CHECK-DAG: attributes #[[$READ_EXEC_ATTRS]] = { convergent } ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365995 - Fix -Wdocumentation warning. NFCI.
Author: rksimon Date: Sat Jul 13 01:08:43 2019 New Revision: 365995 URL: http://llvm.org/viewvc/llvm-project?rev=365995&view=rev Log: Fix -Wdocumentation warning. NFCI. Modified: cfe/trunk/include/clang/DirectoryWatcher/DirectoryWatcher.h Modified: cfe/trunk/include/clang/DirectoryWatcher/DirectoryWatcher.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/DirectoryWatcher/DirectoryWatcher.h?rev=365995&r1=365994&r2=365995&view=diff == --- cfe/trunk/include/clang/DirectoryWatcher/DirectoryWatcher.h (original) +++ cfe/trunk/include/clang/DirectoryWatcher/DirectoryWatcher.h Sat Jul 13 01:08:43 2019 @@ -98,8 +98,7 @@ public: : Kind(Kind), Filename(Filename) {} }; - /// Returns nullptr if \param Path doesn't exist. - /// Returns nullptr if \param Path isn't a directory. + /// Returns nullptr if \param Path doesn't exist or isn't a directory. /// Returns nullptr if OS kernel API told us we can't start watching. In such /// case it's unclear whether just retrying has any chance to succeeed. static std::unique_ptr ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r366029 - Fix uninitialized variable analyzer warning. NFCI.
Author: rksimon Date: Sun Jul 14 12:13:09 2019 New Revision: 366029 URL: http://llvm.org/viewvc/llvm-project?rev=366029&view=rev Log: Fix uninitialized variable analyzer warning. NFCI. Modified: cfe/trunk/lib/Sema/SemaDecl.cpp Modified: cfe/trunk/lib/Sema/SemaDecl.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDecl.cpp?rev=366029&r1=366028&r2=366029&view=diff == --- cfe/trunk/lib/Sema/SemaDecl.cpp (original) +++ cfe/trunk/lib/Sema/SemaDecl.cpp Sun Jul 14 12:13:09 2019 @@ -12192,7 +12192,7 @@ void Sema::CheckCompleteVariableDeclarat // Cache the result of checking for constant initialization. Optional CacheHasConstInit; - const Expr *CacheCulprit; + const Expr *CacheCulprit = nullptr; auto checkConstInit = [&]() mutable { if (!CacheHasConstInit) CacheHasConstInit = var->getInit()->isConstantInitializer( ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r366062 - Fix uninitialized variable analyzer warning. NFCI.
Author: rksimon Date: Mon Jul 15 06:00:43 2019 New Revision: 366062 URL: http://llvm.org/viewvc/llvm-project?rev=366062&view=rev Log: Fix uninitialized variable analyzer warning. NFCI. Modified: cfe/trunk/lib/AST/ASTImporter.cpp Modified: cfe/trunk/lib/AST/ASTImporter.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTImporter.cpp?rev=366062&r1=366061&r2=366062&view=diff == --- cfe/trunk/lib/AST/ASTImporter.cpp (original) +++ cfe/trunk/lib/AST/ASTImporter.cpp Mon Jul 15 06:00:43 2019 @@ -8075,7 +8075,7 @@ ASTImporter::Import(NestedNameSpecifier if (!FromNNS) return nullptr; - NestedNameSpecifier *Prefix; + NestedNameSpecifier *Prefix = nullptr; if (Error Err = importInto(Prefix, FromNNS->getPrefix())) return std::move(Err); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r366339 - Fix MSVC 'implicitly capture' compile error. NFCI.
Author: rksimon Date: Wed Jul 17 08:31:53 2019 New Revision: 366339 URL: http://llvm.org/viewvc/llvm-project?rev=366339&view=rev Log: Fix MSVC 'implicitly capture' compile error. NFCI. Modified: clang-tools-extra/trunk/clangd/QueryDriverDatabase.cpp Modified: clang-tools-extra/trunk/clangd/QueryDriverDatabase.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/QueryDriverDatabase.cpp?rev=366339&r1=366338&r2=366339&view=diff == --- clang-tools-extra/trunk/clangd/QueryDriverDatabase.cpp (original) +++ clang-tools-extra/trunk/clangd/QueryDriverDatabase.cpp Wed Jul 17 08:31:53 2019 @@ -65,7 +65,7 @@ std::vector parseDriverOutp auto StartIt = std::find_if(Lines.begin(), Lines.end(), - [](llvm::StringRef Line) { return Line.trim() == SIS; }); + [SIS](llvm::StringRef Line) { return Line.trim() == SIS; }); if (StartIt == Lines.end()) { elog("System include extraction: start marker not found: {0}", Output); return {}; ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r366635 - Fix cppcheck reduce scope variable warnings. NFCI
Author: rksimon Date: Sat Jul 20 06:01:16 2019 New Revision: 366635 URL: http://llvm.org/viewvc/llvm-project?rev=366635&view=rev Log: Fix cppcheck reduce scope variable warnings. NFCI Move a couple of variables inside the block where they are actually needed. Modified: cfe/trunk/lib/Sema/SemaDecl.cpp Modified: cfe/trunk/lib/Sema/SemaDecl.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDecl.cpp?rev=366635&r1=366634&r2=366635&view=diff == --- cfe/trunk/lib/Sema/SemaDecl.cpp (original) +++ cfe/trunk/lib/Sema/SemaDecl.cpp Sat Jul 20 06:01:16 2019 @@ -4090,11 +4090,11 @@ void Sema::notePreviousDefinition(const // Is it the same file and same offset? Provide more information on why // this leads to a redefinition error. - bool EmittedDiag = false; if (FNew == FOld && FNewDecLoc.second == FOldDecLoc.second) { SourceLocation OldIncLoc = SrcMgr.getIncludeLoc(FOldDecLoc.first); SourceLocation NewIncLoc = SrcMgr.getIncludeLoc(FNewDecLoc.first); -EmittedDiag = noteFromModuleOrInclude(Old->getOwningModule(), OldIncLoc); +bool EmittedDiag = +noteFromModuleOrInclude(Old->getOwningModule(), OldIncLoc); EmittedDiag |= noteFromModuleOrInclude(getCurrentModule(), NewIncLoc); // If the header has no guards, emit a note suggesting one. @@ -4686,12 +4686,12 @@ Decl *Sema::BuildAnonymousStructOrUnion( bool Invalid = false; if (getLangOpts().CPlusPlus) { const char *PrevSpec = nullptr; -unsigned DiagID; if (Record->isUnion()) { // C++ [class.union]p6: // C++17 [class.union.anon]p2: // Anonymous unions declared in a named namespace or in the // global namespace shall be declared static. + unsigned DiagID; DeclContext *OwnerScope = Owner->getRedeclContext(); if (DS.getStorageClassSpec() != DeclSpec::SCS_static && (OwnerScope->isTranslationUnit() || ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang-tools-extra] r367678 - Fix "not all control paths return a value" warning. NFCI.
Author: rksimon Date: Fri Aug 2 05:55:04 2019 New Revision: 367678 URL: http://llvm.org/viewvc/llvm-project?rev=367678&view=rev Log: Fix "not all control paths return a value" warning. NFCI. Modified: clang-tools-extra/trunk/clangd/unittests/TweakTesting.cpp Modified: clang-tools-extra/trunk/clangd/unittests/TweakTesting.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/unittests/TweakTesting.cpp?rev=367678&r1=367677&r2=367678&view=diff == --- clang-tools-extra/trunk/clangd/unittests/TweakTesting.cpp (original) +++ clang-tools-extra/trunk/clangd/unittests/TweakTesting.cpp Fri Aug 2 05:55:04 2019 @@ -28,6 +28,7 @@ std::pairhttps://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r368692 - Fix -Wdocumentation typo. NFCI.
Author: rksimon Date: Tue Aug 13 06:52:20 2019 New Revision: 368692 URL: http://llvm.org/viewvc/llvm-project?rev=368692&view=rev Log: Fix -Wdocumentation typo. NFCI. Modified: cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h Modified: cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h?rev=368692&r1=368691&r2=368692&view=diff == --- cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h (original) +++ cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h Tue Aug 13 06:52:20 2019 @@ -245,7 +245,7 @@ private: ASTUnitStorage(const CompilerInstance &CI); /// Loads an ASTUnit for a function. /// -/// \param FuncitionName USR name of the function. +/// \param FunctionName USR name of the function. /// \param CrossTUDir Path to the directory used to store CTU related files. /// \param IndexName Name of the file inside \p CrossTUDir which maps /// function USR names to file paths. These files contain the corresponding @@ -261,7 +261,7 @@ private: /// Identifies the path of the file which can be used to load the ASTUnit /// for a given function. /// -/// \param FuncitionName USR name of the function. +/// \param FunctionName USR name of the function. /// \param CrossTUDir Path to the directory used to store CTU related files. /// \param IndexName Name of the file inside \p CrossTUDir which maps /// function USR names to file paths. These files contain the corresponding ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365012 - Fix MSVC "not all control paths return a value" warnings. NFCI.
Author: rksimon Date: Wed Jul 3 02:54:25 2019 New Revision: 365012 URL: http://llvm.org/viewvc/llvm-project?rev=365012&view=rev Log: Fix MSVC "not all control paths return a value" warnings. NFCI. Modified: cfe/trunk/lib/AST/ExprConstant.cpp Modified: cfe/trunk/lib/AST/ExprConstant.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ExprConstant.cpp?rev=365012&r1=365011&r2=365012&view=diff == --- cfe/trunk/lib/AST/ExprConstant.cpp (original) +++ cfe/trunk/lib/AST/ExprConstant.cpp Wed Jul 3 02:54:25 2019 @@ -5481,6 +5481,7 @@ class APValueToBufferConverter { case APValue::LValue: llvm_unreachable("LValue subobject in bit_cast?"); } +llvm_unreachable("Unhandled APValue::ValueKind"); } bool visitRecord(const APValue &Val, QualType Ty, CharUnits Offset) { @@ -5749,6 +5750,7 @@ class BufferToAPValueConverter { llvm_unreachable("either dependent or not canonical!"); #include "clang/AST/TypeNodes.def" } +llvm_unreachable("Unhandled Type::TypeClass"); } public: ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365019 - Fix MSVC "signed/unsigned mismatch" warning. NFCI.
Author: rksimon Date: Wed Jul 3 03:26:28 2019 New Revision: 365019 URL: http://llvm.org/viewvc/llvm-project?rev=365019&view=rev Log: Fix MSVC "signed/unsigned mismatch" warning. NFCI. Fixes PR42426. Modified: cfe/trunk/lib/Basic/SourceManager.cpp Modified: cfe/trunk/lib/Basic/SourceManager.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/SourceManager.cpp?rev=365019&r1=365018&r2=365019&view=diff == --- cfe/trunk/lib/Basic/SourceManager.cpp (original) +++ cfe/trunk/lib/Basic/SourceManager.cpp Wed Jul 3 03:26:28 2019 @@ -113,7 +113,8 @@ const llvm::MemoryBuffer *ContentCache:: // Clang (including elsewhere in this file!) use 'unsigned' to represent file // offsets, line numbers, string literal lengths, and so on, and fail // miserably on large source files. - if (ContentsEntry->getSize() >= std::numeric_limits::max()) { + if ((uint64_t)ContentsEntry->getSize() >= + std::numeric_limits::max()) { // We can't make a memory buffer of the required size, so just make a small // one. We should never hit a situation where we've already parsed to a // later offset of the file, so it shouldn't matter that the buffer is ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365031 - Fix -Wcast-qual const warning. NFCI.
Author: rksimon Date: Wed Jul 3 05:20:28 2019 New Revision: 365031 URL: http://llvm.org/viewvc/llvm-project?rev=365031&view=rev Log: Fix -Wcast-qual const warning. NFCI. Modified: cfe/trunk/lib/AST/ExprConstant.cpp Modified: cfe/trunk/lib/AST/ExprConstant.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ExprConstant.cpp?rev=365031&r1=365030&r2=365031&view=diff == --- cfe/trunk/lib/AST/ExprConstant.cpp (original) +++ cfe/trunk/lib/AST/ExprConstant.cpp Wed Jul 3 05:20:28 2019 @@ -5615,7 +5615,7 @@ class BufferToAPValueConverter { !EnumSugar && (T->isSpecificBuiltinType(BuiltinType::UChar) || T->isSpecificBuiltinType(BuiltinType::Char_U)); if (!IsStdByte && !IsUChar) { -QualType DisplayType(EnumSugar ? (Type *)EnumSugar : T, 0); +QualType DisplayType(EnumSugar ? (const Type *)EnumSugar : T, 0); Info.FFDiag(BCE->getExprLoc(), diag::note_constexpr_bit_cast_indet_dest) << DisplayType << Info.Ctx.getLangOpts().CharIsSigned; ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365126 - Fix -Wdocumentation warning.
Author: rksimon Date: Thu Jul 4 03:28:31 2019 New Revision: 365126 URL: http://llvm.org/viewvc/llvm-project?rev=365126&view=rev Log: Fix -Wdocumentation warning. Modified: cfe/trunk/include/clang/AST/ASTImporter.h Modified: cfe/trunk/include/clang/AST/ASTImporter.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/ASTImporter.h?rev=365126&r1=365125&r2=365126&view=diff == --- cfe/trunk/include/clang/AST/ASTImporter.h (original) +++ cfe/trunk/include/clang/AST/ASTImporter.h Thu Jul 4 03:28:31 2019 @@ -300,7 +300,7 @@ class TypeSourceInfo; /// as little as it can, e.g., by importing declarations as forward /// declarations that can be completed at a later point. /// -/// \param LookupTable The importer specific lookup table which may be +/// \param SharedState The importer specific lookup table which may be /// shared amongst several ASTImporter objects. /// If not set then the original C/C++ lookup is used. ASTImporter(ASTContext &ToContext, FileManager &ToFileManager, ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365454 - Retire VS2015 Support
Author: rksimon Date: Tue Jul 9 03:12:37 2019 New Revision: 365454 URL: http://llvm.org/viewvc/llvm-project?rev=365454&view=rev Log: Retire VS2015 Support As proposed here: https://lists.llvm.org/pipermail/llvm-dev/2019-June/133147.html This patch raises the minimum supported version to build LLVM/Clang to Visual Studio 2017. Differential Revision: https://reviews.llvm.org/D64326 Modified: cfe/trunk/www/get_started.html Modified: cfe/trunk/www/get_started.html URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/www/get_started.html?rev=365454&r1=365453&r2=365454&view=diff == --- cfe/trunk/www/get_started.html (original) +++ cfe/trunk/www/get_started.html Tue Jul 9 03:12:37 2019 @@ -110,7 +110,7 @@ Visual Studio: project files. Get it from: https://cmake.org/download/";> https://cmake.org/download/ -Visual Studio 2015 or later +Visual Studio 2017 or later Python. It is used to run the clang test suite. Get it from: https://www.python.org/download/";> https://www.python.org/download/ ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r365465 - Revert rL365355 : [Syntax] Introduce syntax trees
Author: rksimon Date: Tue Jul 9 04:26:35 2019 New Revision: 365465 URL: http://llvm.org/viewvc/llvm-project?rev=365465&view=rev Log: Revert rL365355 : [Syntax] Introduce syntax trees Summary: A tooling-focused alternative to the AST. This commit focuses on the memory-management strategy and the structure of the AST. More to follow later: - Operations to mutate the syntax trees and corresponding textual replacements. - Mapping between clang AST nodes and syntax tree nodes. - More node types corresponding to the language constructs. Reviewers: sammccall Reviewed By: sammccall Subscribers: llvm-commits, mgorny, cfe-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D61637 Fixes buildbots which were crashing on SyntaxTests.exe Removed: cfe/trunk/include/clang/Tooling/Syntax/BuildTree.h cfe/trunk/include/clang/Tooling/Syntax/Nodes.h cfe/trunk/include/clang/Tooling/Syntax/Tree.h cfe/trunk/lib/Tooling/Syntax/BuildTree.cpp cfe/trunk/lib/Tooling/Syntax/Nodes.cpp cfe/trunk/lib/Tooling/Syntax/Tree.cpp cfe/trunk/unittests/Tooling/Syntax/TreeTest.cpp Modified: cfe/trunk/lib/Tooling/Syntax/CMakeLists.txt cfe/trunk/unittests/Tooling/Syntax/CMakeLists.txt Removed: cfe/trunk/include/clang/Tooling/Syntax/BuildTree.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Tooling/Syntax/BuildTree.h?rev=365464&view=auto == --- cfe/trunk/include/clang/Tooling/Syntax/BuildTree.h (original) +++ cfe/trunk/include/clang/Tooling/Syntax/BuildTree.h (removed) @@ -1,24 +0,0 @@ -//===- BuildTree.h - build syntax trees ---*- C++ -*-=// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===--===// -// Functions to construct a syntax tree from an AST. -//===--===// -#ifndef LLVM_CLANG_TOOLING_SYNTAX_TREE_H -#define LLVM_CLANG_TOOLING_SYNTAX_TREE_H - -#include "clang/AST/Decl.h" -#include "clang/Tooling/Syntax/Nodes.h" - -namespace clang { -namespace syntax { - -/// Build a syntax tree for the main file. -syntax::TranslationUnit *buildSyntaxTree(Arena &A, - const clang::TranslationUnitDecl &TU); -} // namespace syntax -} // namespace clang -#endif Removed: cfe/trunk/include/clang/Tooling/Syntax/Nodes.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Tooling/Syntax/Nodes.h?rev=365464&view=auto == --- cfe/trunk/include/clang/Tooling/Syntax/Nodes.h (original) +++ cfe/trunk/include/clang/Tooling/Syntax/Nodes.h (removed) @@ -1,85 +0,0 @@ -//===- Nodes.h - syntax nodes for C/C++ grammar constructs *- C++ -*-=// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===--===// -// Syntax tree nodes for C, C++ and Objective-C grammar constructs. -//===--===// -#ifndef LLVM_CLANG_TOOLING_SYNTAX_NODES_H -#define LLVM_CLANG_TOOLING_SYNTAX_NODES_H - -#include "clang/Basic/TokenKinds.h" -#include "clang/Lex/Token.h" -#include "clang/Tooling/Syntax/Tokens.h" -#include "clang/Tooling/Syntax/Tree.h" -#include "llvm/ADT/ArrayRef.h" -#include "llvm/ADT/StringRef.h" -#include "llvm/Support/raw_ostream.h" - -namespace clang { -namespace syntax { - -/// A kind of a syntax node, used for implementing casts. -enum class NodeKind : uint16_t { - Leaf, - TranslationUnit, - TopLevelDeclaration, - CompoundStatement -}; -/// For debugging purposes. -llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, NodeKind K); - -/// A root node for a translation unit. Parent is always null. -class TranslationUnit final : public Tree { -public: - TranslationUnit() : Tree(NodeKind::TranslationUnit) {} - static bool classof(const Node *N) { -return N->kind() == NodeKind::TranslationUnit; - } -}; - -/// FIXME: this node is temporary and will be replaced with nodes for various -///'declarations' and 'declarators' from the C/C++ grammar -/// -/// Represents any top-level declaration. Only there to give the syntax tree a -/// bit of structure until we implement syntax nodes for declarations and -/// declarators. -class TopLevelDeclaration final : public Tree { -public: - TopLevelDeclaration() : Tree(NodeKind::TopLevelDeclaration) {} - static bool classof(const Node *N) { -return N->kind() == NodeKind::TopLevelDeclaration; - } -}; - -//
r360419 - Fix Wdocumentation warning. NFCI.
Author: rksimon Date: Fri May 10 03:36:37 2019 New Revision: 360419 URL: http://llvm.org/viewvc/llvm-project?rev=360419&view=rev Log: Fix Wdocumentation warning. NFCI. Modified: cfe/trunk/lib/CodeGen/CodeGenModule.h Modified: cfe/trunk/lib/CodeGen/CodeGenModule.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenModule.h?rev=360419&r1=360418&r2=360419&view=diff == --- cfe/trunk/lib/CodeGen/CodeGenModule.h (original) +++ cfe/trunk/lib/CodeGen/CodeGenModule.h Fri May 10 03:36:37 2019 @@ -1325,8 +1325,9 @@ public: /// \param FN is a pointer to IR function being generated. /// \param FD is a pointer to function declaration if any. /// \param CGF is a pointer to CodeGenFunction that generates this function. - void GenOpenCLArgMetadata(llvm::Function *Fn, const FunctionDecl *FD=nullptr, - CodeGenFunction *CGF=nullptr); + void GenOpenCLArgMetadata(llvm::Function *FN, +const FunctionDecl *FD = nullptr, +CodeGenFunction *CGF = nullptr); /// Get target specific null pointer. /// \param T is the LLVM type of the null pointer. ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
r360515 - ConstantLValueEmitter::tryEmitAbsolute - remove unused variable. NFCI.
Author: rksimon Date: Sat May 11 04:01:46 2019 New Revision: 360515 URL: http://llvm.org/viewvc/llvm-project?rev=360515&view=rev Log: ConstantLValueEmitter::tryEmitAbsolute - remove unused variable. NFCI. Duplicate getOffset() call. Modified: cfe/trunk/lib/CodeGen/CGExprConstant.cpp Modified: cfe/trunk/lib/CodeGen/CGExprConstant.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGExprConstant.cpp?rev=360515&r1=360514&r2=360515&view=diff == --- cfe/trunk/lib/CodeGen/CGExprConstant.cpp (original) +++ cfe/trunk/lib/CodeGen/CGExprConstant.cpp Sat May 11 04:01:46 2019 @@ -1695,8 +1695,6 @@ llvm::Constant *ConstantLValueEmitter::t /// bitcast to pointer type. llvm::Constant * ConstantLValueEmitter::tryEmitAbsolute(llvm::Type *destTy) { - auto offset = getOffset(); - // If we're producing a pointer, this is easy. auto destPtrTy = cast(destTy); if (Value.isNullPointer()) { @@ -1708,7 +1706,7 @@ ConstantLValueEmitter::tryEmitAbsolute(l // to a pointer. // FIXME: signedness depends on the original integer type. auto intptrTy = CGM.getDataLayout().getIntPtrType(destPtrTy); - llvm::Constant *C = offset; + llvm::Constant *C; C = llvm::ConstantExpr::getIntegerCast(getOffset(), intptrTy, /*isSigned*/ false); C = llvm::ConstantExpr::getIntToPtr(C, destPtrTy); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits