Index: src/objects-visiting.h |
diff --git a/src/objects-visiting.h b/src/objects-visiting.h |
index b476dfef2e392a872fed442e92b0bcfc393037a4..a84c51225b53c706afb06d895b5de218bc74f880 100644 |
--- a/src/objects-visiting.h |
+++ b/src/objects-visiting.h |
@@ -46,71 +46,70 @@ namespace internal { |
// Base class for all static visitors. |
class StaticVisitorBase : public AllStatic { |
public: |
+#define VISITOR_ID_LIST(V) \ |
+ V(SeqAsciiString) \ |
+ V(SeqTwoByteString) \ |
+ V(ShortcutCandidate) \ |
+ V(ByteArray) \ |
+ V(FreeSpace) \ |
+ V(FixedArray) \ |
+ V(FixedDoubleArray) \ |
+ V(GlobalContext) \ |
+ V(DataObject2) \ |
+ V(DataObject3) \ |
+ V(DataObject4) \ |
+ V(DataObject5) \ |
+ V(DataObject6) \ |
+ V(DataObject7) \ |
+ V(DataObject8) \ |
+ V(DataObject9) \ |
+ V(DataObjectGeneric) \ |
+ V(JSObject2) \ |
+ V(JSObject3) \ |
+ V(JSObject4) \ |
+ V(JSObject5) \ |
+ V(JSObject6) \ |
+ V(JSObject7) \ |
+ V(JSObject8) \ |
+ V(JSObject9) \ |
+ V(JSObjectGeneric) \ |
+ V(Struct2) \ |
+ V(Struct3) \ |
+ V(Struct4) \ |
+ V(Struct5) \ |
+ V(Struct6) \ |
+ V(Struct7) \ |
+ V(Struct8) \ |
+ V(Struct9) \ |
+ V(StructGeneric) \ |
+ V(ConsString) \ |
+ V(SlicedString) \ |
+ V(Oddball) \ |
+ V(Code) \ |
+ V(Map) \ |
+ V(PropertyCell) \ |
+ V(SharedFunctionInfo) \ |
+ V(JSFunction) \ |
+ V(JSWeakMap) \ |
+ V(JSRegExp) |
+ |
+ // For data objects, JS objects and structs along with generic visitor which |
+ // can visit object of any size we provide visitors specialized by |
+ // object size in words. |
+ // Ids of specialized visitors are declared in a linear order (without |
+ // holes) starting from the id of visitor specialized for 2 words objects |
+ // (base visitor id) and ending with the id of generic visitor. |
+ // Method GetVisitorIdForSize depends on this ordering to calculate visitor |
+ // id of specialized visitor from given instance size, base visitor id and |
+ // generic visitor's id. |
enum VisitorId { |
- kVisitSeqAsciiString = 0, |
- kVisitSeqTwoByteString, |
- kVisitShortcutCandidate, |
- kVisitByteArray, |
- kVisitFreeSpace, |
- kVisitFixedArray, |
- kVisitFixedDoubleArray, |
- kVisitGlobalContext, |
- |
- // For data objects, JS objects and structs along with generic visitor which |
- // can visit object of any size we provide visitors specialized by |
- // object size in words. |
- // Ids of specialized visitors are declared in a linear order (without |
- // holes) starting from the id of visitor specialized for 2 words objects |
- // (base visitor id) and ending with the id of generic visitor. |
- // Method GetVisitorIdForSize depends on this ordering to calculate visitor |
- // id of specialized visitor from given instance size, base visitor id and |
- // generic visitor's id. |
- |
- kVisitDataObject, |
- kVisitDataObject2 = kVisitDataObject, |
- kVisitDataObject3, |
- kVisitDataObject4, |
- kVisitDataObject5, |
- kVisitDataObject6, |
- kVisitDataObject7, |
- kVisitDataObject8, |
- kVisitDataObject9, |
- kVisitDataObjectGeneric, |
- |
- kVisitJSObject, |
- kVisitJSObject2 = kVisitJSObject, |
- kVisitJSObject3, |
- kVisitJSObject4, |
- kVisitJSObject5, |
- kVisitJSObject6, |
- kVisitJSObject7, |
- kVisitJSObject8, |
- kVisitJSObject9, |
- kVisitJSObjectGeneric, |
- |
- kVisitStruct, |
- kVisitStruct2 = kVisitStruct, |
- kVisitStruct3, |
- kVisitStruct4, |
- kVisitStruct5, |
- kVisitStruct6, |
- kVisitStruct7, |
- kVisitStruct8, |
- kVisitStruct9, |
- kVisitStructGeneric, |
- |
- kVisitConsString, |
- kVisitSlicedString, |
- kVisitOddball, |
- kVisitCode, |
- kVisitMap, |
- kVisitPropertyCell, |
- kVisitSharedFunctionInfo, |
- kVisitJSFunction, |
- kVisitJSWeakMap, |
- kVisitJSRegExp, |
- |
+#define VISITOR_ID_ENUM_DECL(id) kVisit##id, |
+ VISITOR_ID_LIST(VISITOR_ID_ENUM_DECL) |
+#undef VISITOR_ID_ENUM_DECL |
kVisitorIdCount, |
+ kVisitDataObject = kVisitDataObject2, |
+ kVisitJSObject = kVisitJSObject2, |
+ kVisitStruct = kVisitStruct2, |
kMinObjectSizeInWords = 2 |
}; |