LLVM  8.0.1
Macros | Enumerations | Variables
WebAssemblyRuntimeLibcallSignatures.cpp File Reference

This file contains signature information for runtime libcalls. More...

#include "WebAssemblyRuntimeLibcallSignatures.h"
#include "WebAssemblySubtarget.h"
#include "llvm/CodeGen/RuntimeLibcalls.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/IR/RuntimeLibcalls.def"
Include dependency graph for WebAssemblyRuntimeLibcallSignatures.cpp:

Go to the source code of this file.

Macros

#define HANDLE_LIBCALL(code, name)   {(const char *)name, RTLIB::code},
 

Enumerations

enum  RuntimeLibcallSignature
 

Variables

static ManagedStatic< StaticLibcallNameMap > LibcallNameMap
 

Detailed Description

This file contains signature information for runtime libcalls.

CodeGen uses external symbols, which it refers to by name. The WebAssembly target needs type information for all functions. This file contains a big table providing type signatures for all runtime library functions that LLVM uses.

This is currently a fairly heavy-handed solution.

Definition in file WebAssemblyRuntimeLibcallSignatures.cpp.

Macro Definition Documentation

◆ HANDLE_LIBCALL

#define HANDLE_LIBCALL (   code,
  name 
)    {(const char *)name, RTLIB::code},

Enumeration Type Documentation

◆ RuntimeLibcallSignature

Definition at line 31 of file WebAssemblyRuntimeLibcallSignatures.cpp.

Variable Documentation

◆ LibcallNameMap

ManagedStatic<StaticLibcallNameMap> LibcallNameMap
static

Definition at line 832 of file WebAssemblyRuntimeLibcallSignatures.cpp.