aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Passes/PassBuilder.cpp
diff options
context:
space:
mode:
authorMadhur Amilkanthwar <madhura@nvidia.com>2025-07-21 10:48:03 +0530
committerGitHub <noreply@github.com>2025-07-21 10:48:03 +0530
commit60d2d94db253a9fdc7bd111120c803f808564b30 (patch)
treef1df6698f9bb3ebd612777dddd363f43453bbe2e /llvm/lib/Passes/PassBuilder.cpp
parent63b9cbd6e4a581b49cb40e4603c7130699bf55a1 (diff)
downloadllvm-60d2d94db253a9fdc7bd111120c803f808564b30.zip
llvm-60d2d94db253a9fdc7bd111120c803f808564b30.tar.gz
llvm-60d2d94db253a9fdc7bd111120c803f808564b30.tar.bz2
[GVN] memoryssa implies no-memdep (#149473)
Enabling one of MemorySSA or MD implies the other is off.
Diffstat (limited to 'llvm/lib/Passes/PassBuilder.cpp')
-rw-r--r--llvm/lib/Passes/PassBuilder.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp
index 80fb52f..e15570c 100644
--- a/llvm/lib/Passes/PassBuilder.cpp
+++ b/llvm/lib/Passes/PassBuilder.cpp
@@ -1189,9 +1189,13 @@ Expected<GVNOptions> parseGVNOptions(StringRef Params) {
} else if (ParamName == "split-backedge-load-pre") {
Result.setLoadPRESplitBackedge(Enable);
} else if (ParamName == "memdep") {
+ // MemDep and MemorySSA are mutually exclusive.
Result.setMemDep(Enable);
+ Result.setMemorySSA(!Enable);
} else if (ParamName == "memoryssa") {
+ // MemDep and MemorySSA are mutually exclusive.
Result.setMemorySSA(Enable);
+ Result.setMemDep(!Enable);
} else {
return make_error<StringError>(
formatv("invalid GVN pass parameter '{}'", ParamName).str(),