aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Lex/ModuleMap.cpp
diff options
context:
space:
mode:
authorDhruv Chawla <44582521+dc03@users.noreply.github.com>2023-09-01 18:07:46 +0530
committerDhruv Chawla <44582521+dc03@users.noreply.github.com>2023-09-09 11:00:47 +0530
commite13e808283f7fd9e873ae922dd1ef61aeaa0eb4a (patch)
tree5b40fd6749a818ff80b2315095efc0f2ab6f8957 /clang/lib/Lex/ModuleMap.cpp
parentf8074942c5a6f266abb1c4d1465a4d8115b22d43 (diff)
downloadllvm-e13e808283f7fd9e873ae922dd1ef61aeaa0eb4a.zip
llvm-e13e808283f7fd9e873ae922dd1ef61aeaa0eb4a.tar.gz
llvm-e13e808283f7fd9e873ae922dd1ef61aeaa0eb4a.tar.bz2
[SROA] Limit the number of allowed slices when trying to split allocas
This patch adds a hidden CLI option "--sroa-max-alloca-slices", which is an integer that controls the maximum number of alloca slices SROA can consider before bailing out. This is useful because it may not be profitable to split memcpys into (possibly tens of) thousands of loads/stores. This also prevents an issue with exponential compile time explosion in passes like DSE and MemCpyOpt caused by excessive alloca splitting. Fixes https://github.com/rust-lang/rust/issues/88580. Differential Revision: https://reviews.llvm.org/D159354
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
0 files changed, 0 insertions, 0 deletions