Bug 1244252 - Don't check object group generation when generating code to create unboxed objects off thread, r=terrence.
authorBrian Hackett <bhackett1024@gmail.com>
Mon, 29 Feb 2016 11:59:14 -0700
changeset 286141 7d0c95cfa2e04d4e4994a550dde885f46f91ab7c
parent 286140 d686bf9e479fef8b98decc57b28a50dbf65321b9
child 286142 8a13b9de65139548416d7dd98444097847dbf396
push id30039
push usercbook@mozilla.com
push dateTue, 01 Mar 2016 11:02:11 +0000
treeherdermozilla-central@5cafa6f3019b [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersterrence
bugs1244252
milestone47.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1244252 - Don't check object group generation when generating code to create unboxed objects off thread, r=terrence.
js/src/jit/MacroAssembler.cpp
--- a/js/src/jit/MacroAssembler.cpp
+++ b/js/src/jit/MacroAssembler.cpp
@@ -1168,17 +1168,17 @@ MacroAssembler::initGCThing(Register obj
 
     PopRegsInMask(RegisterSet::Volatile());
 #endif
 }
 
 void
 MacroAssembler::initUnboxedObjectContents(Register object, UnboxedPlainObject* templateObject)
 {
-    const UnboxedLayout& layout = templateObject->layout();
+    const UnboxedLayout& layout = templateObject->layoutDontCheckGeneration();
 
     // Initialize reference fields of the object, per UnboxedPlainObject::create.
     if (const int32_t* list = layout.traceList()) {
         while (*list != -1) {
             storePtr(ImmGCPtr(GetJitContext()->runtime->names().empty),
                      Address(object, UnboxedPlainObject::offsetOfData() + *list));
             list++;
         }