LLVM 22.0.0git
CombinerHelper.h File Reference

This contains common combine transformations that may be used in a combine pass,or by the target elsewhere. More...

Go to the source code of this file.

Classes

struct  llvm::PreferredTuple
struct  llvm::IndexedLoadStoreMatchInfo
struct  llvm::PtrAddChain
struct  llvm::RegisterImmPair
struct  llvm::ShiftOfShiftedLogic
struct  llvm::LshrOfTruncOfLshr
struct  llvm::InstructionBuildSteps
struct  llvm::InstructionStepsMatchInfo
class  llvm::CombinerHelper

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Typedefs

using llvm::BuildFnTy = std::function<void(MachineIRBuilder &)>
using llvm::OperandBuildSteps

Detailed Description

This contains common combine transformations that may be used in a combine pass,or by the target elsewhere.

Targets can pick individual opcode transformations from the helper or use tryCombine which invokes all transformations. All of the transformations return true if the MachineInstruction changed and false otherwise.

Definition in file CombinerHelper.h.