aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/InlineFunction.cpp
diff options
context:
space:
mode:
authorYounan Zhang <zyn7109@gmail.com>2025-01-27 23:04:57 +0800
committerGitHub <noreply@github.com>2025-01-27 23:04:57 +0800
commit27c917307563eae93c7fef9c3944e56e1f5b5f6d (patch)
treec62e205e7982b0971357e821a73dd2a713ee81d9 /llvm/lib/Transforms/Utils/InlineFunction.cpp
parent1f5335c1db5d54b4465677c224b48e0ffc78e6d9 (diff)
downloadllvm-27c917307563eae93c7fef9c3944e56e1f5b5f6d.zip
llvm-27c917307563eae93c7fef9c3944e56e1f5b5f6d.tar.gz
llvm-27c917307563eae93c7fef9c3944e56e1f5b5f6d.tar.bz2
[Clang] Remove unnecessary Decl transform & profiles for SizeOfPackExpr (#124533)
We used to always transform the pattern declaration for SizeOfPackExpr to ensure the constraint expression's profile produced the desired result. However, this approach failed to handle pack expansions when the pack referred to function parameters. In such cases, the function parameters were formerly expanded to 1 to avoid building Subst* nodes (see e6974daa7). That workaround caused us to transform a pack without a proper ArgumentPackSubstitutionIndex, leading to crashes when transforming the pattern. It turns out that profiling the pattern for partially substituted SizeOfPackExprs is unnecessary because their transformed forms are also profiled within the partial arguments. Fixes https://github.com/llvm/llvm-project/issues/124161
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions