blob: cccc96152f2f6eae1e6b57e221eb3171d5513eca [file] [log] [blame]
Dan Gohman4fc4e422016-10-24 19:49:43 +00001//===-- WebAssemblyUtilities - WebAssembly Utility Functions ---*- 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 declaration of the WebAssembly-specific
12/// utility functions.
13///
14//===----------------------------------------------------------------------===//
15
16#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYUTILITIES_H
17#define LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYUTILITIES_H
18
19namespace llvm {
20
21class MachineInstr;
22class WebAssemblyFunctionInfo;
23
24namespace WebAssembly {
25
26bool isArgument(const MachineInstr &MI);
27bool isCopy(const MachineInstr &MI);
28bool isTee(const MachineInstr &MI);
29bool isChild(const MachineInstr &MI, const WebAssemblyFunctionInfo &MFI);
Dan Gohmand934cb82017-02-24 23:18:00 +000030bool isCallIndirect(const MachineInstr &MI);
Dan Gohman4fc4e422016-10-24 19:49:43 +000031
32} // end namespace WebAssembly
33} // end namespace llvm
34
35#endif