1//=- SPIRVMCInstLower.h -- Convert SPIR-V MachineInstr to MCInst --*- C++ -*-=// 2// 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 6// 7//===----------------------------------------------------------------------===// 8 9#ifndef LLVM_LIB_TARGET_SPIRV_SPIRVMCINSTLOWER_H 10#define LLVM_LIB_TARGET_SPIRV_SPIRVMCINSTLOWER_H 11 12#include "llvm/Support/Compiler.h" 13 14namespace llvm { 15class MCInst; 16class MachineInstr; 17namespace SPIRV { 18struct ModuleAnalysisInfo; 19} // namespace SPIRV 20 21// This class is used to lower a MachineInstr into an MCInst. 22class LLVM_LIBRARY_VISIBILITY SPIRVMCInstLower { 23public: 24 void lower(const MachineInstr *MI, MCInst &OutMI, 25 SPIRV::ModuleAnalysisInfo *MAI) const; 26}; 27} // namespace llvm 28 29#endif // LLVM_LIB_TARGET_SPIRV_SPIRVMCINSTLOWER_H 30