[clang] [llvm] [clang] Support per-function [[clang::code_align(N)]] attribute. (PR #80765)

2024-02-11 Thread Anton Bikineev via cfe-commits
AntonBikineev wrote: > I am not sure a case where people care for specific functions and want > annotating them. Our (V8 and Chromium) use case is that we know some hot functions that suffer from misaligned jumps. These functions would ideally be annotated with the attribute. We don't want

[clang] [llvm] [clang] Support per-function [[clang::code_align(N)]] attribute. (PR #80765)

2024-02-09 Thread Anton Bikineev via cfe-commits
AntonBikineev wrote: > Aligning the targets of branches is a different thing from what you've > implemented. There are basic blocks which are not branch targets, and there > are branch targets which are not at the beginning of a basic block. (Branch > targets that aren't at the beginning of a

[llvm] [clang] [clang] Support per-function [[clang::code_align(N)]] attribute. (PR #80765)

2024-02-05 Thread Anton Bikineev via cfe-commits
https://github.com/AntonBikineev updated https://github.com/llvm/llvm-project/pull/80765 >From 88151098d3087f95d3a5b652309a12fb2e9f757e Mon Sep 17 00:00:00 2001 From: Anton Bikineev Date: Mon, 5 Feb 2024 12:24:17 +0100 Subject: [PATCH] [clang] Support per-function [[clang::code_align(N)]]

[llvm] [clang] [clang] Support per-function [[clang::code_align(N)]] attribute. (PR #80765)

2024-02-05 Thread Anton Bikineev via cfe-commits
https://github.com/AntonBikineev updated https://github.com/llvm/llvm-project/pull/80765 >From 99d2cc55fb952361b1fe04e2c21dcb5b04f11d47 Mon Sep 17 00:00:00 2001 From: Anton Bikineev Date: Mon, 5 Feb 2024 12:24:17 +0100 Subject: [PATCH] [clang] Support per-function [[clang::code_align(N)]]

[llvm] [clang] [clang] Support per-function [[clang::code_align(N)]] attribute. (PR #80765)

2024-02-05 Thread Anton Bikineev via cfe-commits
https://github.com/AntonBikineev created https://github.com/llvm/llvm-project/pull/80765 The existing attribute works only for loop headers. This can unfortunately be quite limiting, especially as a protection against the "Jump Conditional Code Erratum" [0] (for example, if there is an

[clang] 7b85e76 - [PGO] Consider parent context when weighing branches with likelyhood.

2022-10-08 Thread Anton Bikineev via cfe-commits
Author: Anton Bikineev Date: 2022-10-08T23:49:27+02:00 New Revision: 7b85e765000df36fcc6a5191dec9a28f444245ba URL: https://github.com/llvm/llvm-project/commit/7b85e765000df36fcc6a5191dec9a28f444245ba DIFF:

[clang] 6954515 - [Sema] Move 'char-expression-as-unsigned < 0' into a separate diagnostic

2021-04-13 Thread Anton Bikineev via cfe-commits
Author: Anton Bikineev Date: 2021-04-14T01:01:40+02:00 New Revision: 69545154cc28a0a7f813174253c6cb428666eb3a URL: https://github.com/llvm/llvm-project/commit/69545154cc28a0a7f813174253c6cb428666eb3a DIFF:

[clang] dc7ebd2 - [C++2b] Support size_t literals

2021-03-31 Thread Anton Bikineev via cfe-commits
Author: Anton Bikineev Date: 2021-03-31T13:36:23Z New Revision: dc7ebd2cb0cf4a83bb6cd1bfc8853b0a30054777 URL: https://github.com/llvm/llvm-project/commit/dc7ebd2cb0cf4a83bb6cd1bfc8853b0a30054777 DIFF: https://github.com/llvm/llvm-project/commit/dc7ebd2cb0cf4a83bb6cd1bfc8853b0a30054777.diff

[clang] 4f8e299 - [Sema] Fix diagnostics for one-byte length modifier

2021-03-09 Thread Anton Bikineev via cfe-commits
Author: Anton Bikineev Date: 2021-03-09T16:56:20+01:00 New Revision: 4f8e299785e860cf974d696d7ca83b70a94977fe URL: https://github.com/llvm/llvm-project/commit/4f8e299785e860cf974d696d7ca83b70a94977fe DIFF:

[clang-tools-extra] d36a033 - [clang-tidy] New checker performance-trivially-destructible-check

2019-11-01 Thread Anton Bikineev via cfe-commits
Author: Anton Bikineev Date: 2019-11-01T16:16:49+01:00 New Revision: d36a0333102698a1398971d0717465322b1c5c2c URL: https://github.com/llvm/llvm-project/commit/d36a0333102698a1398971d0717465322b1c5c2c DIFF:

r368152 - [clang] Fix mismatched args constructing AddressSpaceAttr.

2019-08-07 Thread Anton Bikineev via cfe-commits
Author: antonbikineev Date: Wed Aug 7 04:12:43 2019 New Revision: 368152 URL: http://llvm.org/viewvc/llvm-project?rev=368152=rev Log: [clang] Fix mismatched args constructing AddressSpaceAttr. Differential Revision: https://reviews.llvm.org/D65589 Modified: cfe/trunk/lib/Sema/SemaType.cpp

r367026 - [clang] Remove IsDerivedFromDeathTest.DiesOnEmptyBaseName test.

2019-07-25 Thread Anton Bikineev via cfe-commits
Author: antonbikineev Date: Thu Jul 25 08:09:37 2019 New Revision: 367026 URL: http://llvm.org/viewvc/llvm-project?rev=367026=rev Log: [clang] Remove IsDerivedFromDeathTest.DiesOnEmptyBaseName test. The semantics of an empty basename passed to isDerivedFrom matchers changed in r367022, so this

r367022 - [clang] Fail for empty names in is*DerivedFrom matchers.

2019-07-25 Thread Anton Bikineev via cfe-commits
Author: antonbikineev Date: Thu Jul 25 07:48:55 2019 New Revision: 367022 URL: http://llvm.org/viewvc/llvm-project?rev=367022=rev Log: [clang] Fail for empty names in is*DerivedFrom matchers. Differential Revision: https://reviews.llvm.org/D65279 Modified:

r367010 - [clang] Add isDirectlyDerivedFrom AST matcher.

2019-07-25 Thread Anton Bikineev via cfe-commits
Author: antonbikineev Date: Thu Jul 25 04:54:13 2019 New Revision: 367010 URL: http://llvm.org/viewvc/llvm-project?rev=367010=rev Log: [clang] Add isDirectlyDerivedFrom AST matcher. Differential Revision: https://reviews.llvm.org/D65092 Modified: cfe/trunk/docs/LibASTMatchersReference.html

[PATCH] D26896: [libcxx] Make constexpr char_traits and char_traits

2016-11-24 Thread Anton Bikineev via cfe-commits
AntonBikineev marked 2 inline comments as done. AntonBikineev added inline comments. Comment at: include/__config:925 +#if !__has_builtin(__builtin_memcpy) +#define _LIBCPP_HAS_NO_BUILTIN_MEMCPY EricWF wrote: > What about GCC? Surely it implements some if not

[PATCH] D26896: [libcxx] Make constexpr char_traits and char_traits

2016-11-24 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 79218. AntonBikineev added a comment. Support gcc's __builtin_memcpy, memchr, strlen https://reviews.llvm.org/D26896 Files: include/__config include/__string

[PATCH] D26896: [libcxx] Make constexpr char_traits and char_traits

2016-11-21 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78773. https://reviews.llvm.org/D26896 Files: include/__config include/__string test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char/assign2.pass.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-21 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78739. https://reviews.llvm.org/D26829 Files: include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp lib/Sema/SemaDeclCXX.cpp test/SemaCXX/cxx1z-user-defined-literals.cpp Index:

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-20 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78654. AntonBikineev added a comment. Richard, thanks, I addressed your comments. https://reviews.llvm.org/D26829 Files: include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp lib/Sema/SemaDeclCXX.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-19 Thread Anton Bikineev via cfe-commits
AntonBikineev added inline comments. Comment at: lib/Lex/LiteralSupport.cpp:1716-1717 +StringLiteralParser::UDSuffixResult +StringLiteralParser::isValidUDSuffix(const LangOptions , + StringRef Suffix) { + if (!LangOpts.CPlusPlus11 ||

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev added a comment. In https://reviews.llvm.org/D26829#599906, @malcolm.parsons wrote: > Does `Sema::CheckLiteralOperatorDeclaration` need to check > `StringLiteralParser::isValidUDSuffix`? Thanks, nice point! Just addressed it. https://reviews.llvm.org/D26829

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78602. https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp lib/Sema/SemaDeclCXX.cpp test/SemaCXX/cxx1z-user-defined-literals.cpp

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78532. AntonBikineev marked an inline comment as done. AntonBikineev added a comment. Fixing typos... https://reviews.llvm.org/D26830 Files: include/string_view test/std/strings/string.view/string.view.literals/literal.pass.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78523. AntonBikineev added a comment. Just added a small test case https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78511. https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp Index: lib/Lex/LiteralSupport.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78510. https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp Index: lib/Lex/LiteralSupport.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated the summary for this revision. AntonBikineev updated this revision to Diff 78507. https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td include/clang/Lex/LiteralSupport.h lib/Lex/Lexer.cpp lib/Lex/LiteralSupport.cpp Index:

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev marked an inline comment as done. AntonBikineev added inline comments. Comment at: include/string_view:749 +inline namespace literals +{ EricWF wrote: > AntonBikineev wrote: > > EricWF wrote: > > > If this is new to C++17 then the new

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78498. https://reviews.llvm.org/D26830 Files: include/string_view test/std/strings/string.view/string.view.literals/literal.pass.cpp test/std/strings/string.view/string.view.literals/literal1.fail.cpp

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78497. https://reviews.llvm.org/D26830 Files: include/string_view test/std/strings/string.view/string.view.literals/literal.pass.cpp test/std/strings/string.view/string.view.literals/literal1.fail.cpp

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78493. AntonBikineev marked an inline comment as done. https://reviews.llvm.org/D26830 Files: include/string_view test/std/strings/string.view/string.view.literals/literal.pass.cpp

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev added inline comments. Comment at: include/string_view:749 +inline namespace literals +{ EricWF wrote: > If this is new to C++17 then the new declarations should be guarded by `#if > _LIBCPP_VERSION > 14`. Eric, I was thinking about it, but the

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-18 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 78490. https://reviews.llvm.org/D26829 Files: include/clang/Basic/DiagnosticLexKinds.td lib/Lex/Lexer.cpp Index: lib/Lex/Lexer.cpp === --- lib/Lex/Lexer.cpp +++ lib/Lex/Lexer.cpp @@

[PATCH] D26830: [libcxx] Add string_view literals

2016-11-17 Thread Anton Bikineev via cfe-commits
AntonBikineev created this revision. AntonBikineev added reviewers: mclow.lists, rsmith, cfe-commits. Herald added a reviewer: EricWF. https://reviews.llvm.org/D26830 Files: include/string_view test/std/strings/string.view/string.view.literals/literal.pass.cpp

[PATCH] D26829: [clang] Allow lexer to handle string_view literals

2016-11-17 Thread Anton Bikineev via cfe-commits
AntonBikineev created this revision. AntonBikineev added reviewers: mclow.lists, rsmith, cfe-commits. https://reviews.llvm.org/D26829 Files: lib/Lex/Lexer.cpp Index: lib/Lex/Lexer.cpp === --- lib/Lex/Lexer.cpp +++

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-11 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 63475. AntonBikineev added a comment. Moved stars to the right side of declarations http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-11 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 63474. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp lib/AST/ExprConstant.cpp lib/AST/Stmt.cpp lib/Analysis/BodyFarm.cpp

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-11 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 63473. AntonBikineev added a comment. removed a leftover from parser/cxx1z-init-stmt.cpp test http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-11 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 63472. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp lib/AST/ExprConstant.cpp lib/AST/Stmt.cpp lib/Analysis/BodyFarm.cpp

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-11 Thread Anton Bikineev via cfe-commits
AntonBikineev updated the summary for this revision. AntonBikineev updated this revision to Diff 63471. AntonBikineev added a comment. @rsmith, Richard, again, thank you for guiding. I've addressed your comments. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-07 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 63056. AntonBikineev added a comment. @rsmith, I've added some tests for c++1z init statement. Please let me know if there is anything else I should add or change. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-07-05 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 62790. AntonBikineev added a comment. @rsmith, Thanks for the comments, I've addressed them (except for tests, they are to be added asap). I'm especially not sure about changes in CFG.cpp, could you verify please? http://reviews.llvm.org/D21834

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-06-29 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 62321. AntonBikineev added a comment. Test Parser/cxx1z-init-statement.cpp has been updated according to Sema changes http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-06-29 Thread Anton Bikineev via cfe-commits
AntonBikineev updated this revision to Diff 62317. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp lib/AST/Stmt.cpp lib/Analysis/BodyFarm.cpp lib/CodeGen/CGStmt.cpp lib/Sema/SemaStmt.cpp lib/Sema/TreeTransform.h

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-06-29 Thread Anton Bikineev via cfe-commits
AntonBikineev added a comment. @rsmith, > This is not correct; TryParseSimpleDeclaration usually stops long before it > reaches the end of the simple-declaration, so this will give false negatives > in lots of cases. Yes, I noticed that, that's why I changed use of TryParseSimpleDeclaration

Re: [PATCH] D21834: Implementing 'If statement with Initializer'

2016-06-29 Thread Anton Bikineev via cfe-commits
AntonBikineev added a subscriber: cfe-commits. AntonBikineev updated this revision to Diff 62254. http://reviews.llvm.org/D21834 Files: include/clang/AST/Stmt.h include/clang/Parse/Parser.h include/clang/Sema/Sema.h lib/AST/ASTImporter.cpp lib/AST/Stmt.cpp lib/Analysis/BodyFarm.cpp

Re: [PATCH] D5744: Partial specialization after class template instantiation.

2015-12-14 Thread Anton Bikineev via cfe-commits
AntonBikineev added a comment. @rsmith, are there any plans/suggestions regarding this patch? http://reviews.llvm.org/D5744 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits