blob: 29fdcb0e6cb455d27736ed8e549601c22ebc506c [file] [log] [blame]
Dan Gohman10e730a2015-06-29 23:51:55 +00001//=- WebAssemblyInstrInfo.h - WebAssembly Instruction Information -*- 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//===----------------------------------------------------------------------===//
9///
10/// \file
11/// \brief This file contains the WebAssembly implementation of the
12/// TargetInstrInfo class.
13///
14//===----------------------------------------------------------------------===//
15
16#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYINSTRINFO_H
17#define LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYINSTRINFO_H
18
19#include "WebAssemblyRegisterInfo.h"
20#include "llvm/Target/TargetInstrInfo.h"
21
JF Bastienb9073fb2015-07-22 21:28:15 +000022#define GET_INSTRINFO_HEADER
23#include "WebAssemblyGenInstrInfo.inc"
24
Dan Gohman10e730a2015-06-29 23:51:55 +000025namespace llvm {
26
27class WebAssemblySubtarget;
28
JF Bastienb9073fb2015-07-22 21:28:15 +000029class WebAssemblyInstrInfo final : public WebAssemblyGenInstrInfo {
Dan Gohman10e730a2015-06-29 23:51:55 +000030 const WebAssemblyRegisterInfo RI;
31
32public:
33 explicit WebAssemblyInstrInfo(const WebAssemblySubtarget &STI);
34
35 const WebAssemblyRegisterInfo &getRegisterInfo() const { return RI; }
36};
37
38} // end namespace llvm
39
40#endif