This is only every called with gc::GRAY (despite the default color argument being BLACK...), so if specializing this function and moving it to jsfriendapi reduces one spurious dependency of xpcpublic on jsgc.h. It also slims down the interface a bit. I also took the opportunity to clean up a comment that isn't true any more, now that static strings are true GCthings that can have their mark bits examined.
Should I keep the AssertValidColor even though it is always being called with GRAY?
We have an AssertValidColor in Cell::isMarked as well, so it doesn't seem necessary.
Created attachment 594587 [details] [diff] [review] only lightly tested Should be okay, but I'll push to try at some point.
Try run looked good. https://hg.mozilla.org/integration/mozilla-inbound/rev/945dfb9d0c87