5#ifndef V8_WASM_WASM_INIT_EXPR_H_
6#define V8_WASM_WASM_INIT_EXPR_H_
8#if !V8_ENABLE_WEBASSEMBLY
9#error This header should only be included if WebAssembly is enabled.
168 if (
kind() != other.kind())
return false;
188 return operands_[0] == other.operands_[0] &&
200 for (uint32_t
i = 0;
i <
operands()->size();
i++) {
201 if (
operands()[
i] != other.operands()[
i])
return false;
206 if (
operands()->
size() != other.operands()->size())
return false;
207 for (uint32_t
i = 0;
i <
operands()->size();
i++) {
208 if (
operands()[
i] != other.operands()[
i])
return false;
214 return operands_[0] == other.operands_[0];
220 switch (type.kind()) {
251 std::initializer_list<WasmInitExpr>
operands)
static constexpr HeapType FromBits(uint32_t bits)
constexpr uint32_t raw_bit_field() const
static WasmInitExpr RefI31(Zone *zone, WasmInitExpr value)
WasmInitExpr(Zone *zone, Operator kind, std::initializer_list< WasmInitExpr > operands)
const ZoneVector< WasmInitExpr > * operands_
Immediate immediate() const
static WasmInitExpr AnyConvertExtern(Zone *zone, WasmInitExpr arg)
static WasmInitExpr GlobalGet(uint32_t index)
bool operator==(const WasmInitExpr &other) const
static WasmInitExpr ExternConvertAny(Zone *zone, WasmInitExpr arg)
static WasmInitExpr RefNullConst(HeapType heap_type)
HeapType heap_type() const
WasmInitExpr(uint8_t v[kSimd128Size])
WasmInitExpr(Operator kind, const ZoneVector< WasmInitExpr > *operands)
WasmInitExpr(Operator kind)
static WasmInitExpr StringConst(uint32_t index)
static WasmInitExpr StructNewDefault(ModuleTypeIndex index)
static WasmInitExpr ArrayNewDefault(Zone *zone, ModuleTypeIndex index, WasmInitExpr length)
const ZoneVector< WasmInitExpr > * operands() const
static WasmInitExpr ArrayNewFixed(ModuleTypeIndex index, ZoneVector< WasmInitExpr > *elements)
static WasmInitExpr DefaultValue(ValueType type)
static WasmInitExpr ArrayNew(Zone *zone, ModuleTypeIndex index, WasmInitExpr initial, WasmInitExpr length)
static WasmInitExpr Binop(Zone *zone, Operator op, WasmInitExpr lhs, WasmInitExpr rhs)
static WasmInitExpr StructNew(ModuleTypeIndex index, ZoneVector< WasmInitExpr > *elements)
static WasmInitExpr RefFuncConst(uint32_t index)
constexpr int kSimd128Size
wasm::WasmModule WasmModule
#define DCHECK(condition)
#define DCHECK_EQ(v1, v2)
#define ASSERT_TRIVIALLY_COPYABLE(T)