Bug 1361547, part 1 - Alphabetically sort existing cases in JS_GetTraceThingInfo(). r=sfink draft
authorAndrew McCreight <continuation@gmail.com>
Tue, 02 May 2017 15:35:28 -0700
changeset 571575 33a7b135f7941fa6d2b57a4a84428277809d70cd
parent 571574 ca951e23166d539272c587018e7500b083721b9b
child 571576 5ae4e78bb2c393b2ed98dda29c551b17a6a517cf
push id56850
push userbmo:continuation@gmail.com
push dateTue, 02 May 2017 22:46:19 +0000
reviewerssfink
bugs1361547
milestone55.0a1
Bug 1361547, part 1 - Alphabetically sort existing cases in JS_GetTraceThingInfo(). r=sfink A comment by TraceKind says to sort alphabetically. Currently, these cases appear to not be in any particular order. MozReview-Commit-ID: 3owHBViGUs5
js/src/gc/Tracer.cpp
--- a/js/src/gc/Tracer.cpp
+++ b/js/src/gc/Tracer.cpp
@@ -326,54 +326,54 @@ JS_GetTraceThingInfo(char* buf, size_t b
 {
     const char* name = nullptr; /* silence uninitialized warning */
     size_t n;
 
     if (bufsize == 0)
         return;
 
     switch (kind) {
-      case JS::TraceKind::Object:
-      {
-        name = static_cast<JSObject*>(thing)->getClass()->name;
-        break;
-      }
-
-      case JS::TraceKind::Script:
-        name = "script";
-        break;
-
-      case JS::TraceKind::String:
-        name = ((JSString*)thing)->isDependent()
-               ? "substring"
-               : "string";
-        break;
-
-      case JS::TraceKind::Symbol:
-        name = "symbol";
-        break;
-
       case JS::TraceKind::BaseShape:
         name = "base_shape";
         break;
 
       case JS::TraceKind::JitCode:
         name = "jitcode";
         break;
 
       case JS::TraceKind::LazyScript:
         name = "lazyscript";
         break;
 
+      case JS::TraceKind::Object:
+      {
+        name = static_cast<JSObject*>(thing)->getClass()->name;
+        break;
+      }
+
+      case JS::TraceKind::ObjectGroup:
+        name = "object_group";
+        break;
+
+      case JS::TraceKind::Script:
+        name = "script";
+        break;
+
       case JS::TraceKind::Shape:
         name = "shape";
         break;
 
-      case JS::TraceKind::ObjectGroup:
-        name = "object_group";
+      case JS::TraceKind::String:
+        name = ((JSString*)thing)->isDependent()
+               ? "substring"
+               : "string";
+        break;
+
+      case JS::TraceKind::Symbol:
+        name = "symbol";
         break;
 
       default:
         name = "INVALID";
         break;
     }
 
     n = strlen(name);