mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-29 13:16:06 +00:00

This will make it easy for callers to see issues with and fix up calls to createTargetMachine after a future change to the params of TargetMachine. This matches other nearby enums. For downstream users, this should be a fairly straightforward replacement, e.g. s/CodeGenOpt::Aggressive/CodeGenOptLevel::Aggressive or s/CGFT_/CodeGenFileType::
51 lines
1.5 KiB
C++
51 lines
1.5 KiB
C++
//===-- AMDGPU.h - MachineFunction passes hw codegen --------------*- 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
|
|
//
|
|
/// \file
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_LIB_TARGET_AMDGPU_R600_H
|
|
#define LLVM_LIB_TARGET_AMDGPU_R600_H
|
|
|
|
#include "llvm/Support/CodeGen.h"
|
|
|
|
namespace llvm {
|
|
|
|
class FunctionPass;
|
|
class TargetMachine;
|
|
class ModulePass;
|
|
class PassRegistry;
|
|
|
|
// R600 Passes
|
|
FunctionPass *createR600VectorRegMerger();
|
|
FunctionPass *createR600ExpandSpecialInstrsPass();
|
|
FunctionPass *createR600EmitClauseMarkers();
|
|
FunctionPass *createR600ClauseMergePass();
|
|
FunctionPass *createR600Packetizer();
|
|
FunctionPass *createR600ControlFlowFinalizer();
|
|
FunctionPass *createR600MachineCFGStructurizerPass();
|
|
FunctionPass *createR600ISelDag(TargetMachine &TM, CodeGenOptLevel OptLevel);
|
|
ModulePass *createR600OpenCLImageTypeLoweringPass();
|
|
|
|
void initializeR600ClauseMergePassPass(PassRegistry &);
|
|
extern char &R600ClauseMergePassID;
|
|
|
|
void initializeR600ControlFlowFinalizerPass(PassRegistry &);
|
|
extern char &R600ControlFlowFinalizerID;
|
|
|
|
void initializeR600ExpandSpecialInstrsPassPass(PassRegistry &);
|
|
extern char &R600ExpandSpecialInstrsPassID;
|
|
|
|
void initializeR600VectorRegMergerPass(PassRegistry &);
|
|
extern char &R600VectorRegMergerID;
|
|
|
|
void initializeR600PacketizerPass(PassRegistry &);
|
|
extern char &R600PacketizerID;
|
|
|
|
} // End namespace llvm
|
|
|
|
#endif
|