1 //===- AMDGPUMCInstLower.h MachineInstr Lowering Interface ------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 /// \file 9 //===----------------------------------------------------------------------===// 10 11 #ifndef LLVM_LIB_TARGET_AMDGPU_AMDGPUMCINSTLOWER_H 12 #define LLVM_LIB_TARGET_AMDGPU_AMDGPUMCINSTLOWER_H 13 14 namespace llvm { 15 16 class AMDGPUSubtarget; 17 class MachineInstr; 18 class MCContext; 19 class MCInst; 20 21 class AMDGPUMCInstLower { 22 MCContext &Ctx; 23 const AMDGPUSubtarget &ST; 24 25 public: 26 AMDGPUMCInstLower(MCContext &ctx, const AMDGPUSubtarget &ST); 27 28 /// \brief Lower a MachineInstr to an MCInst 29 void lower(const MachineInstr *MI, MCInst &OutMI) const; 30 31 }; 32 33 } // End namespace llvm 34 35 #endif 36