Bug 1000145 - Tweak type set OOM handling while sweeping, r=jandem.
authorBrian Hackett <bhackett1024@gmail.com>
Thu, 24 Apr 2014 09:04:00 -0600
changeset 180045 496007a2b3aeed32e03fc9223ecfd93f2355233c
parent 180044 0b365c68c8a9f9036024343b07098a499e50517a
child 180046 aad09525748b45199216520e703fd73d2104523c
push id26653
push usercbook@mozilla.com
push dateFri, 25 Apr 2014 10:50:28 +0000
treeherdermozilla-central@2b02d933c39a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjandem
bugs1000145
milestone31.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 1000145 - Tweak type set OOM handling while sweeping, r=jandem.
js/src/jsinfer.cpp
--- a/js/src/jsinfer.cpp
+++ b/js/src/jsinfer.cpp
@@ -3922,17 +3922,18 @@ ConstraintTypeSet::sweep(Zone *zone, boo
                     HashSetInsert<TypeObjectKey *,TypeObjectKey,TypeObjectKey>
                         (zone->types.typeLifoAlloc, objectSet, objectCount, object);
                 if (pentry) {
                     *pentry = object;
                 } else {
                     *oom = true;
                     flags |= TYPE_FLAG_ANYOBJECT;
                     clearObjects();
-                    return;
+                    objectCount = 0;
+                    break;
                 }
             }
         }
         setBaseObjectCount(objectCount);
     } else if (objectCount == 1) {
         TypeObjectKey *object = (TypeObjectKey *) objectSet;
         if (IsAboutToBeFinalized(object)) {
             objectSet = nullptr;