LLVM 22.0.0git
|
This class implements the CFIFunctionFrameReceiver interface to validate Call Frame Information in a stream of function frames. More...
#include "llvm/DWARFCFIChecker/DWARFCFIFunctionFrameAnalyzer.h"
Public Member Functions | |
CFIFunctionFrameAnalyzer (MCContext &Context, const MCInstrInfo &MCII) | |
~CFIFunctionFrameAnalyzer () | |
void | startFunctionFrame (bool IsEH, ArrayRef< MCCFIInstruction > Prologue) override |
void | emitInstructionAndDirectives (const MCInst &Inst, ArrayRef< MCCFIInstruction > Directives) override |
Instructions are processed in the program order. | |
void | finishFunctionFrame () override |
Public Member Functions inherited from llvm::CFIFunctionFrameReceiver | |
CFIFunctionFrameReceiver (const CFIFunctionFrameReceiver &)=delete | |
CFIFunctionFrameReceiver & | operator= (const CFIFunctionFrameReceiver &)=delete |
virtual | ~CFIFunctionFrameReceiver ()=default |
CFIFunctionFrameReceiver (MCContext &Context) | |
MCContext & | getContext () const |
This class implements the CFIFunctionFrameReceiver interface to validate Call Frame Information in a stream of function frames.
For validation, it instantiates a DWARFCFIAnalysis for each frame. The errors/warnings are emitted through the MCContext instance to the constructor. If a frame finishes without being started or if all the frames are not finished before this classes is destructed, the program fails through an assertion.
Definition at line 31 of file DWARFCFIFunctionFrameAnalyzer.h.
|
inline |
Definition at line 33 of file DWARFCFIFunctionFrameAnalyzer.h.
References llvm::CFIFunctionFrameReceiver::CFIFunctionFrameReceiver().
CFIFunctionFrameAnalyzer::~CFIFunctionFrameAnalyzer | ( | ) |
Definition at line 13 of file DWARFCFIFunctionFrameAnalyzer.cpp.
References assert().
|
overridevirtual |
Instructions are processed in the program order.
Reimplemented from llvm::CFIFunctionFrameReceiver.
Definition at line 23 of file DWARFCFIFunctionFrameAnalyzer.cpp.
References assert().
|
overridevirtual |
Reimplemented from llvm::CFIFunctionFrameReceiver.
Definition at line 30 of file DWARFCFIFunctionFrameAnalyzer.cpp.
References assert().
|
overridevirtual |
Reimplemented from llvm::CFIFunctionFrameReceiver.
Definition at line 18 of file DWARFCFIFunctionFrameAnalyzer.cpp.
References llvm::CFIFunctionFrameReceiver::getContext().