LLVM 22.0.0git
WebAssemblyUtilities.h File Reference

This file contains the declaration of the WebAssembly-specific utility functions. More...

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::WebAssembly

Functions

bool llvm::WebAssembly::isChild (const MachineInstr &MI, const WebAssemblyFunctionInfo &MFI)
 Test whether MI is a child of some other node in an expression tree.
bool llvm::WebAssembly::mayThrow (const MachineInstr &MI)
const MachineOperandllvm::WebAssembly::getCalleeOp (const MachineInstr &MI)
 Returns the operand number of a callee, assuming the argument is a call instruction.
MCSymbolWasmllvm::WebAssembly::getOrCreateFunctionTableSymbol (MCContext &Ctx, const WebAssemblySubtarget *Subtarget)
 Returns the __indirect_function_table, for use in call_indirect and in function bitcasts.
MCSymbolWasmllvm::WebAssembly::getOrCreateFuncrefCallTableSymbol (MCContext &Ctx, const WebAssemblySubtarget *Subtarget)
 Returns the __funcref_call_table, for use in funcref calls when lowered to table.set + call_indirect.
MachineInstrllvm::WebAssembly::findCatch (MachineBasicBlock *EHPad)
 Find a catch instruction from an EH pad.
unsigned llvm::WebAssembly::getCopyOpcodeForRegClass (const TargetRegisterClass *RC)
 Returns the appropriate copy opcode for the given register class.
bool llvm::WebAssembly::canLowerMultivalueReturn (const WebAssemblySubtarget *Subtarget)
 Returns true if multivalue returns of a function can be lowered directly, i.e., not indirectly via a pointer parameter that points to the value in memory.
bool llvm::WebAssembly::canLowerReturn (size_t ResultSize, const WebAssemblySubtarget *Subtarget)
 Returns true if the function's return value(s) can be lowered directly, i.e., not indirectly via a pointer parameter that points to the value in memory.

Variables

const char *const llvm::WebAssembly::ClangCallTerminateFn
const char *const llvm::WebAssembly::CxaBeginCatchFn = "__cxa_begin_catch"
const char *const llvm::WebAssembly::CxaRethrowFn = "__cxa_rethrow"
const char *const llvm::WebAssembly::StdTerminateFn = "_ZSt9terminatev"
const char *const llvm::WebAssembly::PersonalityWrapperFn

Detailed Description

This file contains the declaration of the WebAssembly-specific utility functions.

Definition in file WebAssemblyUtilities.h.