blob: 9fdebb78b994094ef60feaa8200f85fadb581840 [file] [log] [blame]
Dan Gohman38b42b42017-02-22 18:34:16 +00001// CodeGen/RuntimeLibcallSignatures.h - R.T. Lib. Call Signatures -*- C++ -*--//
2//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// 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
Dan Gohman38b42b42017-02-22 18:34:16 +00006//
7//===----------------------------------------------------------------------===//
8///
9/// \file
Adrian Prantl5f8f34e42018-05-01 15:54:18 +000010/// This file provides signature information for runtime libcalls.
Dan Gohman38b42b42017-02-22 18:34:16 +000011///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H
15#define LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H
16
Dan Gohmand37dc2f2017-02-27 22:41:39 +000017#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
Dan Gohman38b42b42017-02-22 18:34:16 +000018#include "llvm/ADT/SmallVector.h"
19#include "llvm/CodeGen/RuntimeLibcalls.h"
Dan Gohman38b42b42017-02-22 18:34:16 +000020
21namespace llvm {
22
23class WebAssemblySubtarget;
24
Derek Schuff70ce1af2018-09-27 22:20:33 +000025extern void GetLibcallSignature(const WebAssemblySubtarget &Subtarget,
26 RTLIB::Libcall LC,
27 SmallVectorImpl<wasm::ValType> &Rets,
28 SmallVectorImpl<wasm::ValType> &Params);
Dan Gohman38b42b42017-02-22 18:34:16 +000029
Derek Schuff70ce1af2018-09-27 22:20:33 +000030extern void GetLibcallSignature(const WebAssemblySubtarget &Subtarget,
31 const char *Name,
32 SmallVectorImpl<wasm::ValType> &Rets,
33 SmallVectorImpl<wasm::ValType> &Params);
Dan Gohman38b42b42017-02-22 18:34:16 +000034
35} // end namespace llvm
36
37#endif