llvm::CFIFunctionFrameAnalyzer

Validates Call Frame Information across a stream of function frames.

Synopsis

Declared in <llvm/DWARFCFIChecker/DWARFCFIFunctionFrameAnalyzer.h>

class CFIFunctionFrameAnalyzer
    : public CFIFunctionFrameReceiver

Description

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.

Base Classes

NameDescription
CFIFunctionFrameReceiverAbstract interface for receiving DWARF Call Frame Information for function frames.

Member Functions

NameDescription
CFIFunctionFrameAnalyzer [constructor]Construct an analyzer that reports CFI issues through Context.
~CFIFunctionFrameAnalyzer [destructor] [virtual]Destroy the analyzer; asserts that every started frame was finished.
operator= [deleted]Copy assignment is deleted.
emitInstructionAndDirectives [virtual]Update the current frame analysis with an instruction and its CFI.
finishFunctionFrame [virtual]Finish analyzing the current function frame and pop its analysis state.
getContext Get the MC context associated with this receiver.
startFunctionFrame [virtual]Begin analyzing a new function frame with the given prologue CFI.