xref: /llvm-project/llvm/lib/Target/PowerPC/PPCMacroFusion.h (revision 627b5bda11a79785a21b1a50070415d4188aba6a)
1518292dbSQingShan Zhang //===- PPCMacroFusion.h - PowerPC Macro Fusion ----------------------------===//
2518292dbSQingShan Zhang //
3518292dbSQingShan Zhang // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4518292dbSQingShan Zhang // See https://llvm.org/LICENSE.txt for license information.
5518292dbSQingShan Zhang // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6518292dbSQingShan Zhang //
7518292dbSQingShan Zhang //===----------------------------------------------------------------------===//
8518292dbSQingShan Zhang //
9518292dbSQingShan Zhang /// \file This file contains the PowerPC definition of the DAG scheduling
10518292dbSQingShan Zhang /// mutation to pair instructions back to back.
11518292dbSQingShan Zhang //
12518292dbSQingShan Zhang //===----------------------------------------------------------------------===//
13518292dbSQingShan Zhang 
14*627b5bdaSKazu Hirata #ifndef LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
15*627b5bdaSKazu Hirata #define LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
16*627b5bdaSKazu Hirata 
17518292dbSQingShan Zhang #include "llvm/CodeGen/MachineScheduler.h"
18518292dbSQingShan Zhang 
19518292dbSQingShan Zhang namespace llvm {
20518292dbSQingShan Zhang 
21518292dbSQingShan Zhang /// Note that you have to add:
22518292dbSQingShan Zhang ///   DAG.addMutation(createPowerPCMacroFusionDAGMutation());
23518292dbSQingShan Zhang /// to PPCPassConfig::createMachineScheduler() to have an effect.
24518292dbSQingShan Zhang std::unique_ptr<ScheduleDAGMutation> createPowerPCMacroFusionDAGMutation();
25518292dbSQingShan Zhang } // llvm
26*627b5bdaSKazu Hirata 
27*627b5bdaSKazu Hirata #endif // LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
28