[NewPM] Use a separate struct for ModuleMemorySanitizerPass
authorBjorn Pettersson <bjorn.a.pettersson@ericsson.com>
Wed, 15 Sep 2021 19:23:51 +0000 (21:23 +0200)
committerBjorn Pettersson <bjorn.a.pettersson@ericsson.com>
Thu, 16 Sep 2021 12:58:42 +0000 (14:58 +0200)
commitab41eef9aca3ad5e9321e045a57d36e288a75d17
tree9778874c2f6bab8143424f5224c044a1b7d013a5
parent05ea321f716390abda1632cca71dc9441662cf62
[NewPM] Use a separate struct for ModuleMemorySanitizerPass

Split MemorySanitizerPass into MemorySanitizerPass (as a function
pass) and ModuleMemorySanitizerPass (as a module pass).
Main reason is to make sure that we have a unique mapping from
ClassName to PassName in the new passmanager framework, making it
possible to correctly identify the passes when dealing with options
such as -print-after and -print-pipeline-passes.

This is a follow-up to D105006 and D105007.
clang/lib/CodeGen/BackendUtil.cpp
llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
llvm/lib/Passes/PassRegistry.def
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
llvm/test/Other/new-pm-print-pipeline.ll