diff options
author | Yuanfang Chen <yuanfang.chen@sony.com> | 2020-08-13 12:52:35 -0700 |
---|---|---|
committer | Yuanfang Chen <yuanfang.chen@sony.com> | 2020-08-13 16:13:01 -0700 |
commit | a5ed20b549782bf284162c712af4673f7cd75222 (patch) | |
tree | cc9110bd8494ef9cfa9cbaa45ea304bc3356a668 /llvm/lib/CodeGen/MachineVerifier.cpp | |
parent | 4cb016cd2d8467c572b2e5c5d34f376ee79e4ac1 (diff) | |
download | llvm-a5ed20b549782bf284162c712af4673f7cd75222.zip llvm-a5ed20b549782bf284162c712af4673f7cd75222.tar.gz llvm-a5ed20b549782bf284162c712af4673f7cd75222.tar.bz2 |
[NewPM][CodeGen] Add machine code verification callback
D83608 need this.
Reviewed By: aeubanks
Differential Revision: https://reviews.llvm.org/D85916
Diffstat (limited to 'llvm/lib/CodeGen/MachineVerifier.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineVerifier.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/MachineVerifier.cpp b/llvm/lib/CodeGen/MachineVerifier.cpp index 6fbf37e..26c2914 100644 --- a/llvm/lib/CodeGen/MachineVerifier.cpp +++ b/llvm/lib/CodeGen/MachineVerifier.cpp @@ -304,6 +304,19 @@ FunctionPass *llvm::createMachineVerifierPass(const std::string &Banner) { return new MachineVerifierPass(Banner); } +void llvm::verifyMachineFunction(MachineFunctionAnalysisManager *, + const std::string &Banner, + const MachineFunction &MF) { + // TODO: Use MFAM after porting below analyses. + // LiveVariables *LiveVars; + // LiveIntervals *LiveInts; + // LiveStacks *LiveStks; + // SlotIndexes *Indexes; + unsigned FoundErrors = MachineVerifier(nullptr, Banner.c_str()).verify(MF); + if (FoundErrors) + report_fatal_error("Found " + Twine(FoundErrors) + " machine code errors."); +} + bool MachineFunction::verify(Pass *p, const char *Banner, bool AbortOnErrors) const { MachineFunction &MF = const_cast<MachineFunction&>(*this); |