Lines Matching refs:imm

383   void S128Const(FullDecoder* decoder, const Simd128Immediate<validate>& imm,
385 result->node = builder_->Simd128Constant(imm.value);
403 const IndexImmediate<validate>& imm) {
404 result->node = ssa_env_->locals[imm.index];
408 const IndexImmediate<validate>& imm) {
409 ssa_env_->locals[imm.index] = value.node;
413 const IndexImmediate<validate>& imm) {
415 ssa_env_->locals[imm.index] = value.node;
432 const GlobalIndexImmediate<validate>& imm) {
433 result->node = builder_->GlobalGet(imm.index);
437 const GlobalIndexImmediate<validate>& imm) {
438 builder_->GlobalSet(imm.index, value.node);
442 const IndexImmediate<validate>& imm) {
444 builder_->TableGet(imm.index, index.node, decoder->position());
448 const IndexImmediate<validate>& imm) {
449 builder_->TableSet(imm.index, index.node, value.node, decoder->position());
554 void BrTable(FullDecoder* decoder, const BranchTableImmediate<validate>& imm,
556 if (imm.table_count == 0) {
558 uint32_t target = BranchTableIterator<validate>(decoder, imm).next();
565 TFNode* sw = builder_->Switch(imm.table_count + 1, key.node);
569 BranchTableIterator<validate> iterator(decoder, imm);
574 builder_->SetControl(i == imm.table_count ? builder_->IfDefault(sw)
591 const MemoryAccessImmediate<validate>& imm, const Value& index,
595 imm.offset, imm.alignment, decoder->position());
600 const MemoryAccessImmediate<validate>& imm,
603 transform, index.node, imm.offset,
604 imm.alignment, decoder->position());
608 const Value& index, const MemoryAccessImmediate<validate>& imm,
611 type.value_type(), type.mem_type(), value.node, index.node, imm.offset,
612 imm.alignment, laneidx, decoder->position());
616 const MemoryAccessImmediate<validate>& imm, const Value& index,
618 builder_->StoreMem(type.mem_rep(), index.node, imm.offset, imm.alignment,
623 const MemoryAccessImmediate<validate>& imm, const Value& index,
625 builder_->StoreLane(type.mem_rep(), index.node, imm.offset, imm.alignment,
641 const CallFunctionImmediate<validate>& imm,
647 DoCall(decoder, CallInfo::CallDirect(imm.index), imm.sig, args, returns);
651 const CallFunctionImmediate<validate>& imm,
657 DoReturnCall(decoder, CallInfo::CallDirect(imm.index), imm.sig, args);
661 const CallIndirectImmediate<validate>& imm,
665 CallInfo::CallIndirect(index, imm.table_imm.index, imm.sig_imm.index),
666 imm.sig, args, returns);
670 const CallIndirectImmediate<validate>& imm,
674 CallInfo::CallIndirect(index, imm.table_imm.index, imm.sig_imm.index),
675 imm.sig, args);
832 const SimdLaneImmediate<validate>& imm,
836 result->node = builder_->SimdLaneOp(opcode, imm.lane, nodes.begin());
840 const Simd128Immediate<validate>& imm,
844 result->node = builder_->Simd8x16ShuffleOp(imm.value, input_nodes);
847 void Throw(FullDecoder* decoder, const TagIndexImmediate<validate>& imm,
855 builder_->Throw(imm.index, imm.tag, base::VectorOf(args),
869 const TagIndexImmediate<validate>& imm, Control* block,
888 TFNode* exception_tag = builder_->LoadTagFromTable(imm.index);
905 builder_->GetExceptionValues(exception, imm.tag, caught_vector);
963 const MemoryAccessImmediate<validate>& imm, Value* result) {
966 TFNode* node = builder_->AtomicOp(opcode, inputs.begin(), imm.alignment,
967 imm.offset, decoder->position());
974 const MemoryInitImmediate<validate>& imm, const Value& dst,
976 builder_->MemoryInit(imm.data_segment.index, dst.node, src.node, size.node,
980 void DataDrop(FullDecoder* decoder, const IndexImmediate<validate>& imm) {
981 builder_->DataDrop(imm.index, decoder->position());
985 const MemoryCopyImmediate<validate>& imm, const Value& dst,
991 const MemoryIndexImmediate<validate>& imm, const Value& dst,
996 void TableInit(FullDecoder* decoder, const TableInitImmediate<validate>& imm,
998 builder_->TableInit(imm.table.index, imm.element_segment.index,
1003 void ElemDrop(FullDecoder* decoder, const IndexImmediate<validate>& imm) {
1004 builder_->ElemDrop(imm.index, decoder->position());
1007 void TableCopy(FullDecoder* decoder, const TableCopyImmediate<validate>& imm,
1009 builder_->TableCopy(imm.table_dst.index, imm.table_src.index, args[0].node,
1013 void TableGrow(FullDecoder* decoder, const IndexImmediate<validate>& imm,
1015 result->node = builder_->TableGrow(imm.index, value.node, delta.node);
1018 void TableSize(FullDecoder* decoder, const IndexImmediate<validate>& imm,
1020 result->node = builder_->TableSize(imm.index);
1023 void TableFill(FullDecoder* decoder, const IndexImmediate<validate>& imm,
1025 builder_->TableFill(imm.index, start.node, value.node, count.node);
1029 const StructIndexImmediate<validate>& imm,
1031 uint32_t field_count = imm.struct_type->field_count();
1037 imm.index, imm.struct_type, rtt.node, base::VectorOf(arg_nodes));
1040 const StructIndexImmediate<validate>& imm,
1042 uint32_t field_count = imm.struct_type->field_count();
1045 arg_nodes[i] = DefaultValue(imm.struct_type->field(i));
1048 imm.index, imm.struct_type, rtt.node, base::VectorOf(arg_nodes));
1068 const ArrayIndexImmediate<validate>& imm,
1071 result->node = builder_->ArrayNewWithRtt(imm.index, imm.array_type,
1080 const ArrayIndexImmediate<validate>& imm,
1086 builder_->ArrayNewWithRtt(imm.index, imm.array_type, length.node,
1091 const ArrayIndexImmediate<validate>& imm, const Value& index,
1093 result->node = builder_->ArrayGet(array_obj.node, imm.array_type,
1099 const ArrayIndexImmediate<validate>& imm, const Value& index,
1101 builder_->ArraySet(array_obj.node, imm.array_type, index.node, value.node,
1118 void ArrayInit(FullDecoder* decoder, const ArrayIndexImmediate<validate>& imm,
1126 builder_->ArrayInit(imm.array_type, rtt.node, VectorOf(element_nodes));