Backed out changeset 66d022f720b6 (bug 1480129)
authorSteve Fink <sfink@mozilla.com>
Tue, 16 Oct 2018 14:35:40 -0700
changeset 489839 18c5d2a69f2d9748977bdbe6686889ff7fcc72ef
parent 489838 056d6eeb21116e843a51e6503b2670243252788d
child 489840 06ffaf98e1e97cf3ad13d9e752f05f4f4e44c129
push id247
push userfmarier@mozilla.com
push dateSat, 27 Oct 2018 01:06:44 +0000
bugs1480129
milestone64.0a1
backs out66d022f720b698c8fced2c8628866445ddea6262
Backed out changeset 66d022f720b6 (bug 1480129)
js/src/devtools/rootAnalysis/computeGCTypes.js
--- a/js/src/devtools/rootAnalysis/computeGCTypes.js
+++ b/js/src/devtools/rootAnalysis/computeGCTypes.js
@@ -13,18 +13,16 @@ var typeInfo = {
     'GCThings': [],
     'GCInvalidated': [],
     'NonGCTypes': {}, // unused
     'NonGCPointers': {},
     'RootedGCThings': {},
     'RootedPointers': {},
     'RootedBases': {'JS::AutoGCRooter': true},
     'InheritFromTemplateArgs': {},
-    'OtherCSUTags': {},
-    'OtherFieldTags': {},
 
     // RAII types within which we should assume GC is suppressed, eg
     // AutoSuppressGC.
     'GCSuppressors': {},
 };
 
 var gDescriptors = new Map; // Map from descriptor string => Set of typeName
 
@@ -56,56 +54,36 @@ function processCSU(csu, body)
         else if (tag == 'Rooted Pointer')
             typeInfo.RootedPointers[csu] = true;
         else if (tag == 'Rooted Base')
             typeInfo.RootedBases[csu] = true;
         else if (tag == 'Suppress GC')
             typeInfo.GCSuppressors[csu] = true;
         else if (tag == 'moz_inherit_type_annotations_from_template_args')
             typeInfo.InheritFromTemplateArgs[csu] = true;
-        else
-            addToKeyedList(typeInfo.OtherCSUTags, csu, tag);
     }
 
     for (let { 'Base': base } of (body.CSUBaseClass || []))
         addBaseClass(csu, base);
 
-    for (const field of (body.DataField || [])) {
+    for (let field of (body.DataField || [])) {
         var type = field.Field.Type;
         var fieldName = field.Field.Name[0];
         if (type.Kind == "Pointer") {
             var target = type.Type;
             if (target.Kind == "CSU")
                 addNestedPointer(csu, target.Name, fieldName);
         }
         if (type.Kind == "Array") {
             var target = type.Type;
             if (target.Kind == "CSU")
                 addNestedStructure(csu, target.Name, fieldName);
         }
         if (type.Kind == "CSU")
             addNestedStructure(csu, type.Name, fieldName);
-
-        for (const { 'Name': [ annType, tag ] } of (field.Annotation || [])) {
-            if (!(csu in typeInfo.OtherFieldTags))
-                typeInfo.OtherFieldTags[csu] = [];
-            addToKeyedList(typeInfo.OtherFieldTags[csu], fieldName, tag);
-        }
-    }
-
-    for (const funcfield of (body.FunctionField || [])) {
-        const fields = funcfield.Field;
-        // Pure virtual functions will not have field.Variable; others will.
-        for (const field of funcfield.Field) {
-            for (const {'Name': [annType, tag]} of (field.Annotation || [])) {
-                if (!(csu in typeInfo.OtherFieldTags))
-                    typeInfo.OtherFieldTags[csu] = {};
-                addToKeyedList(typeInfo.OtherFieldTags[csu], field.Name[0], tag);
-            }
-        }
     }
 }
 
 // csu.field is of type inner
 function addNestedStructure(csu, inner, field)
 {
     if (!(inner in structureParents))
         structureParents[inner] = [];