1 //=======--- GCNDPPCombine.h - optimization for DPP instructions ---==========//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 #ifndef LLVM_LIB_TARGET_AMDGPU_GCNDPPCOMBINE_H
10 #define LLVM_LIB_TARGET_AMDGPU_GCNDPPCOMBINE_H
12 #include "llvm/CodeGen/MachinePassManager.h"
15 class GCNDPPCombinePass
: public PassInfoMixin
<GCNDPPCombinePass
> {
17 PreservedAnalyses
run(MachineFunction
&MF
,
18 MachineFunctionAnalysisManager
&MAM
);
20 MachineFunctionProperties
getRequiredProperties() const {
21 return MachineFunctionProperties().set(
22 MachineFunctionProperties::Property::IsSSA
);
26 } // end namespace llvm
28 #endif // LLVM_LIB_TARGET_AMDGPU_GCNDPPCOMBINE_H