| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2013 Google Inc. All rights reserved. | 2  * Copyright (C) 2013 Google Inc. All rights reserved. | 
| 3  * | 3  * | 
| 4  * Redistribution and use in source and binary forms, with or without | 4  * Redistribution and use in source and binary forms, with or without | 
| 5  * modification, are permitted provided that the following conditions are | 5  * modification, are permitted provided that the following conditions are | 
| 6  * met: | 6  * met: | 
| 7  * | 7  * | 
| 8  *     * Redistributions of source code must retain the above copyright | 8  *     * Redistributions of source code must retain the above copyright | 
| 9  * notice, this list of conditions and the following disclaimer. | 9  * notice, this list of conditions and the following disclaimer. | 
| 10  *     * Redistributions in binary form must reproduce the above | 10  *     * Redistributions in binary form must reproduce the above | 
| (...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 276     registerWeakMembers(obj, &TraceMethodDelegate<T, method>::trampoline); | 276     registerWeakMembers(obj, &TraceMethodDelegate<T, method>::trampoline); | 
| 277   } | 277   } | 
| 278 | 278 | 
| 279   void registerWeakMembers(const void* object, WeakCallback callback) { | 279   void registerWeakMembers(const void* object, WeakCallback callback) { | 
| 280     Derived::fromHelper(this)->registerWeakMembers(object, object, callback); | 280     Derived::fromHelper(this)->registerWeakMembers(object, object, callback); | 
| 281   } | 281   } | 
| 282 | 282 | 
| 283   void registerBackingStoreReference(void* slot) { | 283   void registerBackingStoreReference(void* slot) { | 
| 284     if (getMarkingMode() != VisitorMarkingMode::GlobalMarkingWithCompaction) | 284     if (getMarkingMode() != VisitorMarkingMode::GlobalMarkingWithCompaction) | 
| 285       return; | 285       return; | 
| 286     Derived::fromHelper(this)->registerMovingObjectReference( | 286     heap().registerMovingObjectReference( | 
| 287         reinterpret_cast<MovableReference*>(slot)); | 287         reinterpret_cast<MovableReference*>(slot)); | 
| 288   } | 288   } | 
| 289 | 289 | 
| 290   void registerBackingStoreCallback(void* backingStore, | 290   void registerBackingStoreCallback(void* backingStore, | 
| 291                                     MovingObjectCallback callback, | 291                                     MovingObjectCallback callback, | 
| 292                                     void* callbackData) { | 292                                     void* callbackData) { | 
| 293     if (getMarkingMode() != VisitorMarkingMode::GlobalMarkingWithCompaction) | 293     if (getMarkingMode() != VisitorMarkingMode::GlobalMarkingWithCompaction) | 
| 294       return; | 294       return; | 
| 295     Derived::fromHelper(this)->registerMovingObjectCallback( | 295     heap().registerMovingObjectCallback( | 
| 296         reinterpret_cast<MovableReference>(backingStore), callback, | 296         reinterpret_cast<MovableReference>(backingStore), callback, | 
| 297         callbackData); | 297         callbackData); | 
| 298   } | 298   } | 
| 299 | 299 | 
| 300   inline ThreadState* state() const { return m_state; } | 300   inline ThreadState* state() const { return m_state; } | 
| 301   inline ThreadHeap& heap() const { return state()->heap(); } | 301   inline ThreadHeap& heap() const { return state()->heap(); } | 
| 302 | 302 | 
| 303   inline VisitorMarkingMode getMarkingMode() const { return m_markingMode; } | 303   inline VisitorMarkingMode getMarkingMode() const { return m_markingMode; } | 
| 304 | 304 | 
| 305   inline bool isGlobalMarking() const { | 305   inline bool isGlobalMarking() const { | 
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 380 | 380 | 
| 381   virtual void registerWeakTable(const void*, | 381   virtual void registerWeakTable(const void*, | 
| 382                                  EphemeronCallback, | 382                                  EphemeronCallback, | 
| 383                                  EphemeronCallback) = 0; | 383                                  EphemeronCallback) = 0; | 
| 384 #if DCHECK_IS_ON() | 384 #if DCHECK_IS_ON() | 
| 385   virtual bool weakTableRegistered(const void*) = 0; | 385   virtual bool weakTableRegistered(const void*) = 0; | 
| 386 #endif | 386 #endif | 
| 387 | 387 | 
| 388   virtual bool ensureMarked(const void*) = 0; | 388   virtual bool ensureMarked(const void*) = 0; | 
| 389 | 389 | 
| 390   virtual void registerMovingObjectReference(MovableReference*) = 0; |  | 
| 391 |  | 
| 392   virtual void registerMovingObjectCallback(MovableReference, |  | 
| 393                                             MovingObjectCallback, |  | 
| 394                                             void*) = 0; |  | 
| 395 |  | 
| 396   virtual void registerWeakCellWithCallback(void**, WeakCallback) = 0; | 390   virtual void registerWeakCellWithCallback(void**, WeakCallback) = 0; | 
| 397 | 391 | 
| 398  protected: | 392  protected: | 
| 399   Visitor(ThreadState*, VisitorMarkingMode); | 393   Visitor(ThreadState*, VisitorMarkingMode); | 
| 400 | 394 | 
| 401  private: | 395  private: | 
| 402   static Visitor* fromHelper(VisitorHelper<Visitor>* helper) { | 396   static Visitor* fromHelper(VisitorHelper<Visitor>* helper) { | 
| 403     return static_cast<Visitor*>(helper); | 397     return static_cast<Visitor*>(helper); | 
| 404   } | 398   } | 
| 405 }; | 399 }; | 
| 406 | 400 | 
| 407 }  // namespace blink | 401 }  // namespace blink | 
| 408 | 402 | 
| 409 #endif  // Visitor_h | 403 #endif  // Visitor_h | 
| OLD | NEW | 
|---|