diff options
Diffstat (limited to 'llvm/lib/Passes/PassBuilder.cpp')
-rw-r--r-- | llvm/lib/Passes/PassBuilder.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp index 80fb52f..cff7ab5 100644 --- a/llvm/lib/Passes/PassBuilder.cpp +++ b/llvm/lib/Passes/PassBuilder.cpp @@ -124,6 +124,7 @@ #include "llvm/CodeGen/MachineCopyPropagation.h" #include "llvm/CodeGen/MachineDominators.h" #include "llvm/CodeGen/MachineFunctionAnalysis.h" +#include "llvm/CodeGen/MachineInstrBundle.h" #include "llvm/CodeGen/MachineLICM.h" #include "llvm/CodeGen/MachineLateInstrsCleanup.h" #include "llvm/CodeGen/MachinePassManager.h" @@ -1189,9 +1190,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(), |