Textual change reporter that prints banners and no‐change/filter messages.

Synopsis

Declared in <llvm/Passes/StandardInstrumentations.h>

template<typename IRUnitT>
class TextChangeReporter
    : public ChangeReporter<IRUnitT>

Base Classes

Name

Description

ChangeReporter<IRUnitT>

Base class for reporting IR changes under the new pass manager.

Member Functions

Name

Description

handleIRAfterPass

Compare saved before‐IR with IR after PassID runs.

handleInvalidatedPass

Handle invalidation of the IR for PassID.

saveIRBeforePass

Save IR before PassID when the pass/IR is interesting.

Protected Member Functions

Name

Description

TextChangeReporter [constructor]

Construct a text reporter that writes to the standard change stream.

generateIRRepresentation [virtual]

Fill Output with the representation of IR for PassID.

handleAfter [virtual]

Report that interesting IR for PassID/Name changed.

handleFiltered

Report that the IR was filtered out.

handleIgnored

Report that the pass was ignored.

handleInitialIR

Print a module dump of the first IR that is changed.

handleInvalidated

Report that the pass was invalidated.

omitAfter

Report that the IR was omitted because it did not change.

registerRequiredCallbacks

Register the before/after/invalidate callbacks required by this reporter.

Protected Data Members

Name

Description

BeforeStack

Stack of IR representations saved before passes.

InitialIR

Whether the next IR seen is the first one processed.

Out

Output stream used for textual change banners and reports.

VerboseMode

When true, print every interesting event rather than only changes.

Derived Classes

Name

Description

IRChangedPrinter

Change printer based on the string IR from unwrapAndPrint.

InLineChangePrinter

Change printer that shows in‐line basic‐block diffs with +/‐ markers.

Created with MrDocs