//===-- XCoreFrameToArgsOffsetElim.cpp ----------------------------*- C++ -*-=// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // Replace Pseudo FRAME_TO_ARGS_OFFSET with the appropriate real offset. // //===----------------------------------------------------------------------===// #include "XCore.h" #include "XCoreInstrInfo.h" #include "XCoreSubtarget.h" #include "llvm/CodeGen/MachineFrameInfo.h" #include "llvm/CodeGen/MachineFunctionPass.h" #include "llvm/CodeGen/MachineInstrBuilder.h" #include "llvm/Support/raw_ostream.h" #include "llvm/Target/TargetMachine.h" usingnamespacellvm; namespace { struct XCoreFTAOElim : public MachineFunctionPass { … }; char XCoreFTAOElim::ID = …; } /// createXCoreFrameToArgsOffsetEliminationPass - returns an instance of the /// Frame to args offset elimination pass FunctionPass *llvm::createXCoreFrameToArgsOffsetEliminationPass() { … } bool XCoreFTAOElim::runOnMachineFunction(MachineFunction &MF) { … }