//===-- ARMLoadStoreOptimizer.cpp - ARM load / store opt. pass ----*- C++ -*-=////// The LLVM Compiler Infrastructure//// This file is distributed under the University of Illinois Open Source// License. See LICENSE.TXT for details.////===----------------------------------------------------------------------===////// This file contains a pass that performs load / store related peephole// optimizations. This pass should be run after register allocation.////===----------------------------------------------------------------------===//#define DEBUG_TYPE "arm-ldst-opt"#include"ARM.h"#include"ARMAddressingModes.h"#include"ARMBaseInstrInfo.h"#include"ARMMachineFunctionInfo.h"#include"ARMRegisterInfo.h"#include"llvm/DerivedTypes.h"#include"llvm/Function.h"#include"llvm/CodeGen/MachineBasicBlock.h"#include"llvm/CodeGen/MachineFunctionPass.h"#include"llvm/CodeGen/MachineInstr.h"#include"llvm/CodeGen/MachineInstrBuilder.h"#include"llvm/Co