[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-04-03 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 335124. mizvekov added a comment. . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99696/new/ https://reviews.llvm.org/D99696 Files: clang/include/clang/Sema/Sema.h clang/lib/Sema/Sema.cpp

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-04-03 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 335122. mizvekov added a comment. Rebased. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99696/new/ https://reviews.llvm.org/D99696 Files: clang/include/clang/Sema/Sema.h clang/lib/Sema/Sema.cpp

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-04-02 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 335045. mizvekov added a comment. Fixes for auto&, decltype(auto). Exclude candidates from functions with dependent / undeduced return types which are references. Adjusts the CodeGen tests from D99225 . Repository: rG

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-03-31 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 334575. mizvekov added a comment. fix clang-tidy warning. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99696/new/ https://reviews.llvm.org/D99696 Files: clang/include/clang/Sema/Sema.h

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-03-31 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added a comment. In D99696#2662816 , @Quuxplusone wrote: > Wow, nice catches. For posterity, here's the missed-optimization being > addressed IIUC: https://godbolt.org/z/MEoKGs7cE Thanks! And again thank you for providing test cases, it's what

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-03-31 Thread Arthur O'Dwyer via Phabricator via cfe-commits
Quuxplusone added a comment. Wow, nice catches. For posterity, here's the missed-optimization being addressed IIUC: https://godbolt.org/z/MEoKGs7cE Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99696/new/ https://reviews.llvm.org/D99696

[PATCH] D99696: [clang] WIP: NRVO: Improvements and handling of more cases.

2021-03-31 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov created this revision. Herald added a subscriber: lxfind. mizvekov requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This expands NRVO propagation for more cases: Parse analysis improvement: Lambdas and Blocks with dependent