WebAssemblyRuntimeLibcallSignatures.h revision 355940
1186121Skmacy// CodeGen/RuntimeLibcallSignatures.h - R.T. Lib. Call Signatures -*- C++ -*--// 2186121Skmacy// 3186121Skmacy// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4186121Skmacy// See https://llvm.org/LICENSE.txt for license information. 5186121Skmacy// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6186121Skmacy// 7186121Skmacy//===----------------------------------------------------------------------===// 8186121Skmacy/// 9186121Skmacy/// \file 10186121Skmacy/// This file provides signature information for runtime libcalls. 11186121Skmacy/// 12186121Skmacy//===----------------------------------------------------------------------===// 13186121Skmacy 14186121Skmacy#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H 15186121Skmacy#define LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H 16186121Skmacy 17186121Skmacy#include "MCTargetDesc/WebAssemblyMCTargetDesc.h" 18186121Skmacy#include "llvm/ADT/SmallVector.h" 19186121Skmacy#include "llvm/CodeGen/RuntimeLibcalls.h" 20186121Skmacy 21186121Skmacynamespace llvm { 22186121Skmacy 23186121Skmacyclass WebAssemblySubtarget; 24186121Skmacy 25186121Skmacyextern void getLibcallSignature(const WebAssemblySubtarget &Subtarget, 26186121Skmacy RTLIB::Libcall LC, 27186121Skmacy SmallVectorImpl<wasm::ValType> &Rets, 28186121Skmacy SmallVectorImpl<wasm::ValType> &Params); 29186121Skmacy 30186121Skmacyextern void getLibcallSignature(const WebAssemblySubtarget &Subtarget, 31186121Skmacy const char *Name, 32186121Skmacy SmallVectorImpl<wasm::ValType> &Rets, 33186121Skmacy SmallVectorImpl<wasm::ValType> &Params); 34186121Skmacy 35186121Skmacy} // end namespace llvm 36186121Skmacy 37186121Skmacy#endif 38186121Skmacy