19#define GET_REGINFO_ENUM
20#include "WebAssemblyGenRegisterInfo.inc"
41 switch (
Type.SimpleTy) {
43 return wasm::ValType::I32;
45 return wasm::ValType::I64;
47 return wasm::ValType::F32;
49 return wasm::ValType::F64;
56 return wasm::ValType::V128;
58 return wasm::ValType::FUNCREF;
60 return wasm::ValType::EXTERNREF;
85 ValTy = wasm::ValType::EXTERNREF;
87 ValTy = wasm::ValType::FUNCREF;
90 }
else if (VTs.
size() == 1) {
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
This file implements the StringSwitch template, which mimics a switch() statement whose cases are str...
This file contains the declaration of the WebAssembly-specific type parsing utility functions.
void setTableType(wasm::WasmTableType TT)
void setType(wasm::WasmSymbolType type)
void setGlobalType(wasm::WasmGlobalType GT)
std::optional< wasm::WasmSymbolType > getType() const
@ INVALID_SIMPLE_VALUE_TYPE
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
StringRef - Represent a constant reference to a string, i.e.
A switch()-like statement whose cases are string literals.
StringSwitch & Case(StringLiteral S, T Value)
unsigned getID() const
Return the register class ID number.
The instances of the Type class are immutable: once they are created, they are never changed.
bool isArrayTy() const
True if this is an instance of ArrayType.
Type * getArrayElementType() const
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
wasm::ValType regClassToValType(unsigned RC)
wasm::ValType toValType(MVT Type)
bool isRefType(wasm::ValType Type)
bool isExternrefType(const Type *Ty)
void wasmSymbolSetType(MCSymbolWasm *Sym, const Type *GlobalVT, const SmallVector< MVT, 1 > &VTs)
Sets a Wasm Symbol Type.
bool isFuncrefType(const Type *Ty)
MVT parseMVT(StringRef Type)
@ WASM_SYMBOL_TYPE_GLOBAL
This is an optimization pass for GlobalISel generic memory operations.
void report_fatal_error(Error Err, bool gen_crash_diag=true)
Report a serious error, calling any installed error handler.