xref: /openbsd-src/gnu/llvm/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h (revision 73471bf04ceb096474c7f0fa83b1b65c70a787a1)
109467b48Spatrick // CodeGen/RuntimeLibcallSignatures.h - R.T. Lib. Call Signatures -*- C++ -*--//
209467b48Spatrick //
309467b48Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
409467b48Spatrick // See https://llvm.org/LICENSE.txt for license information.
509467b48Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
609467b48Spatrick //
709467b48Spatrick //===----------------------------------------------------------------------===//
809467b48Spatrick ///
909467b48Spatrick /// \file
1009467b48Spatrick /// This file provides signature information for runtime libcalls.
1109467b48Spatrick ///
1209467b48Spatrick //===----------------------------------------------------------------------===//
1309467b48Spatrick 
1409467b48Spatrick #ifndef LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H
1509467b48Spatrick #define LLVM_LIB_TARGET_WEBASSEMBLY_RUNTIME_LIBCALL_SIGNATURES_H
1609467b48Spatrick 
1709467b48Spatrick #include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1809467b48Spatrick #include "llvm/ADT/SmallVector.h"
1909467b48Spatrick #include "llvm/CodeGen/RuntimeLibcalls.h"
2009467b48Spatrick 
2109467b48Spatrick namespace llvm {
2209467b48Spatrick 
2309467b48Spatrick class WebAssemblySubtarget;
2409467b48Spatrick 
2509467b48Spatrick extern void getLibcallSignature(const WebAssemblySubtarget &Subtarget,
2609467b48Spatrick                                 RTLIB::Libcall LC,
2709467b48Spatrick                                 SmallVectorImpl<wasm::ValType> &Rets,
2809467b48Spatrick                                 SmallVectorImpl<wasm::ValType> &Params);
2909467b48Spatrick 
3009467b48Spatrick extern void getLibcallSignature(const WebAssemblySubtarget &Subtarget,
31*73471bf0Spatrick                                 StringRef Name,
3209467b48Spatrick                                 SmallVectorImpl<wasm::ValType> &Rets,
3309467b48Spatrick                                 SmallVectorImpl<wasm::ValType> &Params);
3409467b48Spatrick 
3509467b48Spatrick } // end namespace llvm
3609467b48Spatrick 
3709467b48Spatrick #endif
38