[PATCH] D149006: [llvm][Support] Replace `%` operator with `&` in `Align::isAligned(...)`

2023-04-28 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. > easier in what respect? I mean, easier for CPU :-) The division operation reasonably seems to be more complex than bitwise AND. And since this function is pretty hot it can save a bit of performance. (Actually that's just my assumption. I did not make benchmark really.

[PATCH] D148799: [clang] Return `std::string_view` from `TargetInfo::getClobbers()`

2023-04-24 Thread Sviatoslav Osipov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG42d758bfa690: [clang] Return `std::string_view` from `TargetInfo::getClobbers()` (authored by Stoorx). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148799/n

[PATCH] D148961: [clang] Remove unnecessary virtual inheritance in `TargetInfo`

2023-04-24 Thread Sviatoslav Osipov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG368112e2024a: [clang] Remove unnecessary virtual inheritance in `TargetInfo` (authored by Stoorx). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148961/new/

[PATCH] D148954: [clang] Make access to submodules via `iterator_range`

2023-04-24 Thread Sviatoslav Osipov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG40136ecefc0a: [clang] Make access to submodules via `iterator_range` (authored by Stoorx). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148954/new/ https:/

[PATCH] D149006: [llvm][Support] Replace `%` operator with `&` in `Align::isAligned(...)`

2023-04-22 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Herald added a project: All. Stoorx requested review of this revision. Herald added a project: LLVM. Since the function `Align::value()` ALWAYS returns power of 2, it is easier to check reminder by conjunction with mask, which is `(Pow2Value - 1)`. Repository: rG

[PATCH] D148954: [clang] Make access to submodules via `iterator_range`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. Can you commit it? I have no commit access. Stoorx me[at]stoorx.one CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148954/new/ https://reviews.llvm.org/D148954 ___ cfe-commits mailing list cfe-commits@lists.llvm.org ht

[PATCH] D148961: [clang] Remove unnecessary virtual inheritance in `TargetInfo`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Herald added a project: All. Stoorx requested review of this revision. Herald added a project: clang. Since the `TargetInfo` has no diamond-like inheritance diagram, the `virtual` keyword is not necessary. Repository: rG LLVM Github Monorepo https://reviews.llvm.

[PATCH] D148954: [clang] Make access to submodules via `iterator_range`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515892. Stoorx added a comment. Rebase CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148954/new/ https://reviews.llvm.org/D148954 Files: clang-tools-extra/modularize/CoverageChecker.cpp clang-tools-extra/modularize/ModularizeUtilities.cpp clan

[PATCH] D148954: [clang] Make access to submodules via `iterator_range`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Herald added a project: All. Stoorx requested review of this revision. Herald added projects: clang, clang-tools-extra. In file `clang/lib/Basic/Module.cpp` the `Module` class had `submodule_begin()` and `submodule_end()` functions to retrieve corresponding iterators

[PATCH] D148799: [clang] Return `std::string_view` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515752. Stoorx edited the summary of this revision. Stoorx added a comment. Fix, Rebase & retitle CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148799/new/ https://reviews.llvm.org/D148799 Files: clang/include/clang/Basic/TargetInfo.h clang/lib/

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515734. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang/include/clang/Basic/Module.h clang/lib/Basic/Module.cpp clang/lib/CodeGen/CodeGenModule.cpp clang/lib/Frontend/CompilerInstance.cpp

[PATCH] D148799: [clang] Return `std::string_view` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. I did not set `const` qualifier for return type because `std::string_view` is constant by design. Or should I mark it `const` explicitly? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148799/new/ https://reviews.llvm.org/D148799

[PATCH] D148799: [clang] Return `std::string_view` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515728. Stoorx retitled this revision from "[clang] Return `StringRef` from `TargetInfo::getClobbers()`" to "[clang] Return `std::string_view` from `TargetInfo::getClobbers()`". Stoorx edited the summary of this revision. Stoorx added a comment. Refactoring a

[PATCH] D148799: [clang] Return `StringRef` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. I've looked through usages of `getClobbers` again, and found that in each case the result if the function is casted to `std::string`. clang/lib/CodeGen/CGBuiltin.cpp clang/lib/CodeGen/CGStmt.cpp std::string Constraints = "=r,*Z,~{memory}"; std::string Machine

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515708. Stoorx added a comment. Rebase & upload with context CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang/include/clang/Basic/Module.h clang/lib/Basic/Module.cpp clang/lib/CodeGen/Code

[PATCH] D148799: [clang] Return `StringRef` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515707. Stoorx added a comment. Rebase & upload with context CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148799/new/ https://reviews.llvm.org/D148799 Files: clang/include/clang/Basic/TargetInfo.h clang/lib/Basic/Targets/AArch64.cpp clang/lib

[PATCH] D148799: [clang] Return `StringRef` from `TargetInfo::getClobbers()`

2023-04-21 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. > In this case, no one is manipulating the string until (I assume) after it's > converted to std::string, so we're not removing risky accesses in that way. Maybe the solution is to return some kind of string (std::string or llvm::SmallString) by value or by const referen

[PATCH] D148799: [clang] Return `StringRef` from `TargetInfo::getClobbers()`

2023-04-20 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515312. Stoorx added a comment. Rebase CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148799/new/ https://reviews.llvm.org/D148799 Files: clang/include/clang/Basic/TargetInfo.h clang/lib/Basic/Targets/AArch64.cpp clang/lib/Basic/Targets/AArch64

[PATCH] D148799: [clang] Return `StringRef` from `TargetInfo::getClobbers()`

2023-04-20 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Stoorx added a reviewer: klimek. Stoorx added a project: clang. Herald added subscribers: luke, kosarev, mattd, gchakrabarti, pmatos, asb, asavonic, frasercrmck, kerbowa, luismarques, apazos, sameer.abuasal, s.egerton, Jim, jocewei, PkmX, the_o, brucehoult, MartinMos

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-19 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515016. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang-tools-extra/modularize/CoverageChecker.cpp clang-tools-extra/modularize/ModularizeUtilities.cpp clang/include/clang/Basic/Module.h

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-19 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 515001. Herald added a project: clang-tools-extra. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang-tools-extra/modularize/CoverageChecker.cpp clang-tools-extra/modularize/ModularizeUtilities.

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-19 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 514976. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang/include/clang/Basic/Module.h clang/lib/Basic/Module.cpp clang/lib/CodeGen/CodeGenModule.cpp clang/lib/Frontend/CompilerInstance.cpp

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 514749. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang/include/clang/Basic/Module.h clang/lib/Basic/Module.cpp clang/lib/CodeGen/CodeGenModule.cpp clang/lib/Frontend/CompilerInstance.cpp

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 514744. Stoorx added a comment. Fix unchanged usage of old functions. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148658/new/ https://reviews.llvm.org/D148658 Files: clang/include/clang/Basic/Module.h cla

[PATCH] D148658: [clang] Make access to submodules via `iterator_range`

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Stoorx added a reviewer: DavidSpickett. Stoorx added a project: clang. Herald added a project: All. Stoorx requested review of this revision. In file `clang/lib/Basic/Module.cpp` the `Module` class had `submodule_begin()` and `submodule_end()` functions to retrieve c

[PATCH] D148574: [clang] Return std::unique_ptr from AllocateTarget

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. > Username is fine as long as you're fine being credited as such. Absolutely. What should I do further? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148574/new/ https://reviews.llvm.org/D148574 __

[PATCH] D148574: [clang] Return std::unique_ptr from AllocateTarget

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. > Do you have commit access? No, I don't. And, according to the Policy (as I understood), someone with the commit access have to commit my changes prior I can request the access too. > If you want I can land this for you, I need a name and email address to use > for the

[PATCH] D148574: [clang] Use the 'std::unique_ptr' instead of a raw pointers

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. Yes, it fails locally even for clean repository. I mean, just cloned main branch and tested immediately without any changes. I have found another review, which has the same tests failed. https://reviews.llvm.org/D148546 Moreover, you (@DavidSpickett) have already commen

[PATCH] D148574: [clang] Use the 'std::unique_ptr' instead of a raw pointers

2023-04-18 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx added a comment. That's my first commit into LLVM project. (Almost just for test of the contribution procedure.) Maybe I did something wrong, but the build fails on example tests. I wonder, whether this review request will be actually reviewed despite the failed condition? And maybe som

[PATCH] D148574: Use the 'std::unique_ptr' instead of a raw pointers

2023-04-17 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx updated this revision to Diff 514429. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148574/new/ https://reviews.llvm.org/D148574 Files: clang/lib/Basic/Targets.cpp clang/lib/Basic/Targets.h clang/lib/Basic/Targets/NVPTX.cpp clang/lib/

[PATCH] D148574: Use the 'std::unique_ptr' instead of a raw pointers

2023-04-17 Thread Sviatoslav Osipov via Phabricator via cfe-commits
Stoorx created this revision. Stoorx added a reviewer: DavidSpickett. Herald added subscribers: mattd, gchakrabarti, asavonic, abrachet, phosek, s.egerton, mstorsjo, simoncook, asb, fedor.sergeev, dschuff. Herald added a project: All. Stoorx requested review of this revision. Herald added subscrib