xref: /freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/PPCMacroFusion.h (revision fe6060f10f634930ff71b7c50291ddc610da2475)
15ffd83dbSDimitry Andric //===- PPCMacroFusion.h - PowerPC Macro Fusion ----------------------------===//
25ffd83dbSDimitry Andric //
35ffd83dbSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
45ffd83dbSDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
55ffd83dbSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
65ffd83dbSDimitry Andric //
75ffd83dbSDimitry Andric //===----------------------------------------------------------------------===//
85ffd83dbSDimitry Andric //
95ffd83dbSDimitry Andric /// \file This file contains the PowerPC definition of the DAG scheduling
105ffd83dbSDimitry Andric /// mutation to pair instructions back to back.
115ffd83dbSDimitry Andric //
125ffd83dbSDimitry Andric //===----------------------------------------------------------------------===//
135ffd83dbSDimitry Andric 
14*fe6060f1SDimitry Andric #ifndef LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
15*fe6060f1SDimitry Andric #define LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
16*fe6060f1SDimitry Andric 
175ffd83dbSDimitry Andric #include "llvm/CodeGen/MachineScheduler.h"
185ffd83dbSDimitry Andric 
195ffd83dbSDimitry Andric namespace llvm {
205ffd83dbSDimitry Andric 
215ffd83dbSDimitry Andric /// Note that you have to add:
225ffd83dbSDimitry Andric ///   DAG.addMutation(createPowerPCMacroFusionDAGMutation());
235ffd83dbSDimitry Andric /// to PPCPassConfig::createMachineScheduler() to have an effect.
245ffd83dbSDimitry Andric std::unique_ptr<ScheduleDAGMutation> createPowerPCMacroFusionDAGMutation();
255ffd83dbSDimitry Andric } // llvm
26*fe6060f1SDimitry Andric 
27*fe6060f1SDimitry Andric #endif // LLVM_LIB_TARGET_POWERPC_PPCMACROFUSION_H
28