5#ifndef V8_COMPILER_WASM_GC_LOWERING_H_
6#define V8_COMPILER_WASM_GC_LOWERING_H_
8#if !V8_ENABLE_WEBASSEMBLY
9#error This header should only be included if WebAssembly is enabled.
21class SourcePositionTable;
22class WasmGraphAssembler;
30 const char*
reducer_name()
const override {
return "WasmGCLowering"; }
Reduction ReduceWasmStructSet(Node *node)
Reduction ReduceIsNull(Node *node)
Node * BuildLoadExternalPointerFromObject(Node *object, int offset, ExternalPointerTag tag)
Reduction ReduceWasmArrayLength(Node *node)
Reduction ReduceWasmStructGet(Node *node)
Reduction ReduceWasmArrayGet(Node *node)
WasmGCLowering(Editor *editor, MachineGraph *mcgraph, const wasm::WasmModule *module, bool disable_trap_handler, SourcePositionTable *source_position_table)
Reduction ReduceRttCanon(Node *node)
void UpdateSourcePosition(Node *new_node, Node *old_node)
SourcePositionTable * source_position_table_
Reduction ReduceWasmTypeCheckAbstract(Node *node)
Reduction ReduceWasmTypeCastAbstract(Node *node)
Reduction ReduceTypeGuard(Node *node)
Reduction ReduceWasmAnyConvertExtern(Node *node)
const wasm::WasmModule * module_
NullCheckStrategy null_check_strategy_
Reduction ReduceAssertNotNull(Node *node)
Reduction ReduceStringPrepareForGetCodeunit(Node *node)
Node * IsNull(Node *object, wasm::ValueType type)
Reduction ReduceWasmExternConvertAny(Node *node)
const MachineGraph * mcgraph_
Reduction ReduceWasmArrayInitializeLength(Node *node)
Reduction ReduceWasmArraySet(Node *node)
Reduction ReduceNull(Node *node)
Reduction ReduceWasmTypeCheck(Node *node)
const char * reducer_name() const override
Reduction ReduceWasmTypeCast(Node *node)
Reduction ReduceStringAsWtf16(Node *node)
Reduction ReduceIsNotNull(Node *node)
Reduction Reduce(Node *node) final