%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
#include "src/ast/ast.h" #include "src/builtins/builtins-array-gen.h" #include "src/builtins/builtins-bigint-gen.h" #include "src/builtins/builtins-collections-gen.h" #include "src/builtins/builtins-constructor-gen.h" #include "src/builtins/builtins-data-view-gen.h" #include "src/builtins/builtins-iterator-gen.h" #include "src/builtins/builtins-promise-gen.h" #include "src/builtins/builtins-promise.h" #include "src/builtins/builtins-proxy-gen.h" #include "src/builtins/builtins-regexp-gen.h" #include "src/builtins/builtins-string-gen.h" #include "src/builtins/builtins-typed-array-gen.h" #include "src/builtins/builtins-utils-gen.h" #include "src/builtins/builtins-wasm-gen.h" #include "src/builtins/builtins.h" #include "src/codegen/code-factory.h" #include "src/debug/debug-wasm-objects.h" #include "src/heap/factory-inl.h" #include "src/ic/binary-op-assembler.h" #include "src/ic/handler-configuration-inl.h" #include "src/objects/arguments.h" #include "src/objects/bigint.h" #include "src/objects/elements-kind.h" #include "src/objects/free-space.h" #include "src/objects/js-break-iterator.h" #include "src/objects/js-collator.h" #include "src/objects/js-date-time-format.h" #include "src/objects/js-display-names.h" #include "src/objects/js-function.h" #include "src/objects/js-generator.h" #include "src/objects/js-list-format.h" #include "src/objects/js-locale.h" #include "src/objects/js-number-format.h" #include "src/objects/js-objects.h" #include "src/objects/js-plural-rules.h" #include "src/objects/js-promise.h" #include "src/objects/js-regexp-string-iterator.h" #include "src/objects/js-relative-time-format.h" #include "src/objects/js-segment-iterator.h" #include "src/objects/js-segmenter.h" #include "src/objects/js-segments.h" #include "src/objects/js-weak-refs.h" #include "src/objects/objects.h" #include "src/objects/ordered-hash-table.h" #include "src/objects/property-array.h" #include "src/objects/property-descriptor-object.h" #include "src/objects/source-text-module.h" #include "src/objects/stack-frame-info.h" #include "src/objects/swiss-hash-table-helpers.h" #include "src/objects/swiss-name-dictionary.h" #include "src/objects/synthetic-module.h" #include "src/objects/template-objects.h" #include "src/objects/torque-defined-classes.h" #include "src/torque/runtime-support.h" // Required Builtins: #include "torque-generated/src/objects/promise-tq-csa.h" #include "torque-generated/src/builtins/base-tq-csa.h" #include "torque-generated/src/builtins/convert-tq-csa.h" #include "torque-generated/src/builtins/torque-internal-tq-csa.h" #include "torque-generated/src/objects/promise-tq-csa.h" #include "torque-generated/src/objects/string-tq-csa.h" namespace v8 { namespace internal { TNode<PromiseCapability> Cast_PromiseCapability_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseCapability> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseCapability_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseCapability>{tmp0}; } TNode<PromiseReaction> Cast_PromiseReaction_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseReaction> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseReaction_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseReaction>{tmp0}; } TNode<PromiseReactionJobTask> Cast_PromiseReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseReactionJobTask> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseReactionJobTask_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseReactionJobTask>{tmp0}; } TNode<PromiseFulfillReactionJobTask> Cast_PromiseFulfillReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseFulfillReactionJobTask> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseFulfillReactionJobTask_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseFulfillReactionJobTask>{tmp0}; } TNode<PromiseRejectReactionJobTask> Cast_PromiseRejectReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseRejectReactionJobTask> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseRejectReactionJobTask_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseRejectReactionJobTask>{tmp0}; } TNode<PromiseResolveThenableJobTask> Cast_PromiseResolveThenableJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_obj, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<PromiseResolveThenableJobTask> tmp0; if (block0.is_used()) { ca_.Bind(&block0); compiler::CodeAssemblerLabel label1(&ca_); tmp0 = DownCastForTorqueClass_PromiseResolveThenableJobTask_0(state_, TNode<HeapObject>{p_obj}, &label1); ca_.Goto(&block3); if (label1.is_used()) { ca_.Bind(&label1); ca_.Goto(&block4); } } if (block4.is_used()) { ca_.Bind(&block4); ca_.Goto(label_CastError); } if (block3.is_used()) { ca_.Bind(&block3); ca_.Goto(&block5); } ca_.Bind(&block5); return TNode<PromiseResolveThenableJobTask>{tmp0}; } TNode<HeapObject> LoadPromiseCapabilityPromise_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseCapabilityPromise_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseCapabilityResolve_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseCapabilityResolve_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseCapabilityReject_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseCapabilityReject_0(compiler::CodeAssemblerState* state_, TNode<PromiseCapability> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseReactionNext_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseReactionNext_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<HeapObject> LoadPromiseReactionRejectHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseReactionRejectHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<HeapObject> LoadPromiseReactionFulfillHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseReactionFulfillHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<HeapObject> LoadPromiseReactionPromiseOrCapability_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseReactionPromiseOrCapability_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseReactionContinuationPreservedEmbedderData_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 40); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseReactionContinuationPreservedEmbedderData_0(compiler::CodeAssemblerState* state_, TNode<PromiseReaction> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 40); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseReactionJobTaskArgument_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseReactionJobTaskArgument_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Context> LoadPromiseReactionJobTaskContext_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Context> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); tmp1 = CodeStubAssembler(state_).LoadReference<Context>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Context>{tmp1}; } void StorePromiseReactionJobTaskContext_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o, TNode<Context> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); CodeStubAssembler(state_).StoreReference<Context>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<HeapObject> LoadPromiseReactionJobTaskHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseReactionJobTaskHandler_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<HeapObject> LoadPromiseReactionJobTaskPromiseOrCapability_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<HeapObject> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); tmp1 = CodeStubAssembler(state_).LoadReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<HeapObject>{tmp1}; } void StorePromiseReactionJobTaskPromiseOrCapability_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o, TNode<HeapObject> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); CodeStubAssembler(state_).StoreReference<HeapObject>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Object> LoadPromiseReactionJobTaskContinuationPreservedEmbedderData_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Object> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 40); tmp1 = CodeStubAssembler(state_).LoadReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Object>{tmp1}; } void StorePromiseReactionJobTaskContinuationPreservedEmbedderData_0(compiler::CodeAssemblerState* state_, TNode<PromiseReactionJobTask> p_o, TNode<Object> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 40); CodeStubAssembler(state_).StoreReference<Object>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<Context> LoadPromiseResolveThenableJobTaskContext_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Context> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); tmp1 = CodeStubAssembler(state_).LoadReference<Context>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<Context>{tmp1}; } void StorePromiseResolveThenableJobTaskContext_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o, TNode<Context> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 8); CodeStubAssembler(state_).StoreReference<Context>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<JSPromise> LoadPromiseResolveThenableJobTaskPromiseToResolve_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<JSPromise> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); tmp1 = CodeStubAssembler(state_).LoadReference<JSPromise>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<JSPromise>{tmp1}; } void StorePromiseResolveThenableJobTaskPromiseToResolve_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o, TNode<JSPromise> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 16); CodeStubAssembler(state_).StoreReference<JSPromise>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<JSReceiver> LoadPromiseResolveThenableJobTaskThenable_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<JSReceiver> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); tmp1 = CodeStubAssembler(state_).LoadReference<JSReceiver>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<JSReceiver>{tmp1}; } void StorePromiseResolveThenableJobTaskThenable_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o, TNode<JSReceiver> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 24); CodeStubAssembler(state_).StoreReference<JSReceiver>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<JSReceiver> LoadPromiseResolveThenableJobTaskThen_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<JSReceiver> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); tmp1 = CodeStubAssembler(state_).LoadReference<JSReceiver>(CodeStubAssembler::Reference{p_o, tmp0}); ca_.Goto(&block2); } ca_.Bind(&block2); return TNode<JSReceiver>{tmp1}; } void StorePromiseResolveThenableJobTaskThen_0(compiler::CodeAssemblerState* state_, TNode<PromiseResolveThenableJobTask> p_o, TNode<JSReceiver> p_v) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 32); CodeStubAssembler(state_).StoreReference<JSReceiver>(CodeStubAssembler::Reference{p_o, tmp0}, p_v); ca_.Goto(&block2); } ca_.Bind(&block2); } TNode<PromiseCapability> DownCastForTorqueClass_PromiseCapability_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(107), static_cast<InstanceType>(107))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseCapability>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseCapability>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(107)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(107), static_cast<InstanceType>(107)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(107)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseCapability> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseCapability>{tmp20}; } TNode<PromiseReaction> DownCastForTorqueClass_PromiseReaction_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(108), static_cast<InstanceType>(108))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseReaction>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseReaction>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(108)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(108), static_cast<InstanceType>(108)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(108)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseReaction> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseReaction>{tmp20}; } TNode<PromiseReactionJobTask> DownCastForTorqueClass_PromiseReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(76), static_cast<InstanceType>(77))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseReactionJobTask>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseReactionJobTask>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(76)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(77), static_cast<InstanceType>(76)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(76)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseReactionJobTask> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseReactionJobTask>{tmp20}; } TNode<PromiseFulfillReactionJobTask> DownCastForTorqueClass_PromiseFulfillReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(76), static_cast<InstanceType>(76))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseFulfillReactionJobTask>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseFulfillReactionJobTask>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(76)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(76), static_cast<InstanceType>(76)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(76)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseFulfillReactionJobTask> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseFulfillReactionJobTask>{tmp20}; } TNode<PromiseRejectReactionJobTask> DownCastForTorqueClass_PromiseRejectReactionJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(77), static_cast<InstanceType>(77))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseRejectReactionJobTask>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseRejectReactionJobTask>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(77)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(77), static_cast<InstanceType>(77)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(77)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseRejectReactionJobTask> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseRejectReactionJobTask>{tmp20}; } TNode<PromiseResolveThenableJobTask> DownCastForTorqueClass_PromiseResolveThenableJobTask_0(compiler::CodeAssemblerState* state_, TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError) { compiler::CodeAssembler ca_(state_); compiler::CodeAssembler::SourcePositionScope pos_scope(&ca_); compiler::CodeAssemblerParameterizedLabel<> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); compiler::CodeAssemblerParameterizedLabel<> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred); ca_.Goto(&block0); TNode<IntPtrT> tmp0; TNode<Map> tmp1; if (block0.is_used()) { ca_.Bind(&block0); tmp0 = FromConstexpr_intptr_constexpr_int31_0(state_, 0); tmp1 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{p_o, tmp0}); if (((CodeStubAssembler(state_).ConstexprInt31Equal(static_cast<InstanceType>(80), static_cast<InstanceType>(80))))) { ca_.Goto(&block3); } else { ca_.Goto(&block4); } } if (block3.is_used()) { ca_.Bind(&block3); if ((CodeStubAssembler(state_).ClassHasMapConstant<PromiseResolveThenableJobTask>())) { ca_.Goto(&block6); } else { ca_.Goto(&block7); } } TNode<Map> tmp2; TNode<BoolT> tmp3; if (block6.is_used()) { ca_.Bind(&block6); tmp2 = CodeStubAssembler(state_).GetClassMapConstant<PromiseResolveThenableJobTask>(); tmp3 = CodeStubAssembler(state_).TaggedNotEqual(TNode<HeapObject>{tmp1}, TNode<HeapObject>{tmp2}); ca_.Branch(tmp3, &block9, std::vector<compiler::Node*>{}, &block10, std::vector<compiler::Node*>{}); } if (block9.is_used()) { ca_.Bind(&block9); ca_.Goto(&block1); } if (block10.is_used()) { ca_.Bind(&block10); ca_.Goto(&block8); } TNode<IntPtrT> tmp4; TNode<Uint16T> tmp5; TNode<Uint32T> tmp6; TNode<BoolT> tmp7; if (block7.is_used()) { ca_.Bind(&block7); tmp4 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp5 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp4}); tmp6 = FromConstexpr_uint32_constexpr_uint32_0(state_, static_cast<InstanceType>(80)); tmp7 = CodeStubAssembler(state_).Word32NotEqual(TNode<Uint32T>{tmp5}, TNode<Uint32T>{tmp6}); ca_.Branch(tmp7, &block11, std::vector<compiler::Node*>{}, &block12, std::vector<compiler::Node*>{}); } if (block11.is_used()) { ca_.Bind(&block11); ca_.Goto(&block1); } if (block12.is_used()) { ca_.Bind(&block12); ca_.Goto(&block8); } if (block8.is_used()) { ca_.Bind(&block8); ca_.Goto(&block5); } TNode<Int32T> tmp8; TNode<IntPtrT> tmp9; TNode<Uint16T> tmp10; TNode<Uint16T> tmp11; TNode<Int32T> tmp12; TNode<Uint16T> tmp13; TNode<Uint16T> tmp14; TNode<Int32T> tmp15; TNode<Int32T> tmp16; TNode<Uint32T> tmp17; TNode<Uint32T> tmp18; TNode<BoolT> tmp19; if (block4.is_used()) { ca_.Bind(&block4); tmp8 = FromConstexpr_int32_constexpr_int32_0(state_, (CodeStubAssembler(state_).ConstexprUint32Sub(static_cast<InstanceType>(80), static_cast<InstanceType>(80)))); tmp9 = FromConstexpr_intptr_constexpr_int31_0(state_, 12); tmp10 = CodeStubAssembler(state_).LoadReference<Uint16T>(CodeStubAssembler::Reference{tmp1, tmp9}); tmp11 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp10}); tmp12 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp11}); tmp13 = FromConstexpr_InstanceType_constexpr_InstanceType_0(state_, static_cast<InstanceType>(80)); tmp14 = Convert_uint16_InstanceType_0(state_, TNode<Uint16T>{tmp13}); tmp15 = Convert_int32_uint16_0(state_, TNode<Uint16T>{tmp14}); tmp16 = CodeStubAssembler(state_).Int32Sub(TNode<Int32T>{tmp12}, TNode<Int32T>{tmp15}); tmp17 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp16}); tmp18 = CodeStubAssembler(state_).Unsigned(TNode<Int32T>{tmp8}); tmp19 = CodeStubAssembler(state_).Uint32GreaterThan(TNode<Uint32T>{tmp17}, TNode<Uint32T>{tmp18}); ca_.Branch(tmp19, &block13, std::vector<compiler::Node*>{}, &block14, std::vector<compiler::Node*>{}); } if (block13.is_used()) { ca_.Bind(&block13); ca_.Goto(&block1); } if (block14.is_used()) { ca_.Bind(&block14); ca_.Goto(&block5); } TNode<PromiseResolveThenableJobTask> tmp20; if (block5.is_used()) { ca_.Bind(&block5); tmp20 = TORQUE_CAST(TNode<HeapObject>{p_o}); ca_.Goto(&block15); } if (block1.is_used()) { ca_.Bind(&block1); ca_.Goto(label_CastError); } ca_.Bind(&block15); return TNode<PromiseResolveThenableJobTask>{tmp20}; } } // namespace internal } // namespace v8