diff --git a/src/runtime/AsyncGeneratorObject.h b/src/runtime/AsyncGeneratorObject.h index eaeaa15df..5dfd96c96 100644 --- a/src/runtime/AsyncGeneratorObject.h +++ b/src/runtime/AsyncGeneratorObject.h @@ -90,6 +90,10 @@ class AsyncGeneratorObject : public Object { GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_registerFile)); GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_byteCodeBlock)); GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_resumeValue)); + GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_promiseCapability.m_promise)); + GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_promiseCapability.m_resolveFunction)); + GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_executionPauser.m_promiseCapability.m_rejectFunction)); + GC_set_bit(desc, GC_WORD_OFFSET(AsyncGeneratorObject, m_asyncGeneratorQueue)); } friend Value asyncGeneratorEnqueue(ExecutionState& state, const Value& generator, AsyncGeneratorObject::AsyncGeneratorEnqueueType type, const Value& value); diff --git a/src/runtime/ExecutionPauser.cpp b/src/runtime/ExecutionPauser.cpp index 322ff874d..3857ac921 100644 --- a/src/runtime/ExecutionPauser.cpp +++ b/src/runtime/ExecutionPauser.cpp @@ -48,8 +48,8 @@ void* ExecutionPauser::operator new(size_t size) GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_byteCodeBlock)); GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_resumeValue)); GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_promiseCapability.m_promise)); - GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_promiseCapability.m_rejectFunction)); GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_promiseCapability.m_resolveFunction)); + GC_set_bit(desc, GC_WORD_OFFSET(ExecutionPauser, m_promiseCapability.m_rejectFunction)); descr = GC_make_descriptor(desc, GC_WORD_LEN(ExecutionPauser)); typeInited = true; } diff --git a/src/runtime/ExecutionPauser.h b/src/runtime/ExecutionPauser.h index 2b613a7ab..e52d35323 100644 --- a/src/runtime/ExecutionPauser.h +++ b/src/runtime/ExecutionPauser.h @@ -67,8 +67,8 @@ class ExecutionPauser : public gc { m_byteCodeBlock = nullptr; m_resumeValue = SmallValue(); m_promiseCapability.m_promise = nullptr; - m_promiseCapability.m_rejectFunction = nullptr; m_promiseCapability.m_resolveFunction = nullptr; + m_promiseCapability.m_rejectFunction = nullptr; } enum StartFrom {