X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/93a3786624b2768d89bfa27e46598dc64e2fb70a..81345200c95645a1b0d2635520f96ad55dfde63f:/runtime/RegExpMatchesArray.cpp diff --git a/runtime/RegExpMatchesArray.cpp b/runtime/RegExpMatchesArray.cpp index 062650a..f0cc10b 100644 --- a/runtime/RegExpMatchesArray.cpp +++ b/runtime/RegExpMatchesArray.cpp @@ -27,7 +27,7 @@ #include "RegExpMatchesArray.h" #include "ButterflyInlines.h" -#include "Operations.h" +#include "JSCInlines.h" namespace JSC { @@ -46,7 +46,7 @@ RegExpMatchesArray* RegExpMatchesArray::create(ExecState* exec, JSString* input, { ASSERT(result); VM& vm = exec->vm(); - Butterfly* butterfly = createArrayButterfly(vm, regExp->numSubpatterns() + 1); + Butterfly* butterfly = createArrayButterfly(vm, 0, regExp->numSubpatterns() + 1); RegExpMatchesArray* array = new (NotNull, allocateCell(vm.heap)) RegExpMatchesArray(vm, butterfly, exec->lexicalGlobalObject(), input, regExp, result); array->finishCreation(vm); return array; @@ -60,7 +60,7 @@ void RegExpMatchesArray::finishCreation(VM& vm) void RegExpMatchesArray::visitChildren(JSCell* cell, SlotVisitor& visitor) { RegExpMatchesArray* thisObject = jsCast(cell); - ASSERT_GC_OBJECT_INHERITS(thisObject, &s_info); + ASSERT_GC_OBJECT_INHERITS(thisObject, info()); COMPILE_ASSERT(StructureFlags & OverridesVisitChildren, OverridesVisitChildrenWithoutSettingFlag); ASSERT(thisObject->structure()->typeInfo().overridesVisitChildren()); @@ -92,9 +92,8 @@ void RegExpMatchesArray::reifyAllProperties(ExecState* exec) } } - PutPropertySlot slot; - JSArray::put(this, exec, exec->propertyNames().index, jsNumber(m_result.start), slot); - JSArray::put(this, exec, exec->propertyNames().input, m_input.get(), slot); + putDirect(exec->vm(), exec->propertyNames().index, jsNumber(m_result.start)); + putDirect(exec->vm(), exec->propertyNames().input, m_input.get()); m_state = ReifiedAll; }