Lines Matching defs:LoadStoreOpt

1 //===- LoadStoreOpt.cpp ----------- Generic memory optimizations -*- C++ -*-==//
9 /// This file implements the LoadStoreOpt optimization pass.
12 #include "llvm/CodeGen/GlobalISel/LoadStoreOpt.h"
51 char LoadStoreOpt::ID = 0;
52 INITIALIZE_PASS_BEGIN(LoadStoreOpt, DEBUG_TYPE, "Generic memory optimizations",
54 INITIALIZE_PASS_END(LoadStoreOpt, DEBUG_TYPE, "Generic memory optimizations",
57 LoadStoreOpt::LoadStoreOpt(std::function<bool(const MachineFunction &)> F)
60 LoadStoreOpt::LoadStoreOpt()
61 : LoadStoreOpt([](const MachineFunction &) { return false; }) {}
63 void LoadStoreOpt::init(MachineFunction &MF) {
75 void LoadStoreOpt::getAnalysisUsage(AnalysisUsage &AU) const {
304 bool LoadStoreOpt::mergeStores(SmallVectorImpl<GStore *> &StoresToMerge) {
349 bool LoadStoreOpt::isLegalOrBeforeLegalizer(const LegalityQuery &Query,
358 bool LoadStoreOpt::doSingleStoreMerge(SmallVectorImpl<GStore *> &Stores) {
439 bool LoadStoreOpt::processMergeCandidate(StoreMergeCandidate &C) {
499 bool LoadStoreOpt::operationAliasesWithCandidate(MachineInstr &MI,
508 void LoadStoreOpt::StoreMergeCandidate::addPotentialAlias(MachineInstr &MI) {
512 bool LoadStoreOpt::addStoreToCandidate(GStore &StoreMI,
583 bool LoadStoreOpt::mergeBlockStores(MachineBasicBlock &MBB) {
711 bool LoadStoreOpt::mergeTruncStore(GStore &StoreMI,
905 bool LoadStoreOpt::mergeTruncStoresBlock(MachineBasicBlock &BB) {
923 bool LoadStoreOpt::mergeFunctionStores(MachineFunction &MF) {
943 void LoadStoreOpt::initializeStoreMergeTargetInfo(unsigned AddrSpace) {
975 bool LoadStoreOpt::runOnMachineFunction(MachineFunction &MF) {