llvm::MergedLoadStoreMotionPass

Pass that merges loads and stores across diamond (hammock) control flow.

Synopsis

Declared in <llvm/Transforms/Scalar/MergedLoadStoreMotion.h>

class MergedLoadStoreMotionPass
    : public OptionalPassInfoMixin<MergedLoadStoreMotionPass>

Description

Hoists matching loads into the diamond header and sinks matching stores into the footer, which can hide load latency, enable if-conversion, and reduce static code size.

Base Classes

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

Member Functions

NameDescription
MergedLoadStoreMotionPass [constructor]Constructors
printPipeline Print this pass's pipeline representation to OS.
run Run merged load/store motion over the function.

Static Member Functions

NameDescription
isRequired Return false; optional passes may be skipped.