llvm::InstCombinePass

A pass that combines instructions to form fewer, simpler instructions.

Synopsis

Declared in <llvm/Transforms/InstCombine/InstCombine.h>

class InstCombinePass
    : public OptionalPassInfoMixin<InstCombinePass>

Description

This pass does not modify the CFG, and has a tendency to make instructions dead, so a subsequent DCE pass is useful. For example, it combines: %Y = add int 1, %X %Z = add int 1, %Y into: %Z = add int 2, %X

Base Classes

NameDescription
OptionalPassInfoMixin<InstCombinePass>A CRTP mix-in for passes that can be skipped.

Member Functions

NameDescription
InstCombinePass [constructor]Construct an InstCombine pass with the given options.
printPipeline Print this pass's pipeline representation to OS.
run Run instruction combining over the function.

Static Member Functions

NameDescription
isRequired Return false; optional passes may be skipped.