Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2014 Google Inc. All rights reserved. | 2 * Copyright (C) 2014 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 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 279 if (!m_count) | 279 if (!m_count) |
| 280 ThreadState::current()->freeWrapperPersistentRegion(this); | 280 ThreadState::current()->freeWrapperPersistentRegion(this); |
| 281 } | 281 } |
| 282 | 282 |
| 283 bool removeIfNotLast(WrapperPersistentRegion** headPtr); | 283 bool removeIfNotLast(WrapperPersistentRegion** headPtr); |
| 284 static void insertHead(WrapperPersistentRegion** headPtr, WrapperPersistentR egion* newHead); | 284 static void insertHead(WrapperPersistentRegion** headPtr, WrapperPersistentR egion* newHead); |
| 285 static WrapperPersistentRegion* removeHead(WrapperPersistentRegion** headPtr ); | 285 static WrapperPersistentRegion* removeHead(WrapperPersistentRegion** headPtr ); |
| 286 static Address outOfLineAllocate(ThreadState*, WrapperPersistentRegion**); | 286 static Address outOfLineAllocate(ThreadState*, WrapperPersistentRegion**); |
| 287 static void trace(WrapperPersistentRegion* head, Visitor* visitor) | 287 static void trace(WrapperPersistentRegion* head, Visitor* visitor) |
| 288 { | 288 { |
| 289 TRACE_EVENT0("blink_gc", "WrapperPersistentRegion::trace"); | |
|
sof
2014/10/10 07:21:19
TRACE_EVENT0() will always be in scope?
haraken
2014/10/10 07:27:42
Not always. If the TRACE_EVENT0 measures the time
| |
| 289 for (WrapperPersistentRegion* current = head; current; current = current ->m_next) | 290 for (WrapperPersistentRegion* current = head; current; current = current ->m_next) |
| 290 current->traceRegion(visitor); | 291 current->traceRegion(visitor); |
| 291 } | 292 } |
| 292 | 293 |
| 293 private: | 294 private: |
| 294 void traceRegion(Visitor* visitor) | 295 void traceRegion(Visitor* visitor) |
| 295 { | 296 { |
| 296 size_t live = 0; | 297 size_t live = 0; |
| 297 | 298 |
| 298 #ifdef NDEBUG | 299 #ifdef NDEBUG |
| (...skipping 1097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1396 struct ParamStorageTraits<T*> : public PointerParamStorageTraits<T*, blink::IsGa rbageCollectedType<T>::value> { | 1397 struct ParamStorageTraits<T*> : public PointerParamStorageTraits<T*, blink::IsGa rbageCollectedType<T>::value> { |
| 1397 }; | 1398 }; |
| 1398 | 1399 |
| 1399 template<typename T> | 1400 template<typename T> |
| 1400 struct ParamStorageTraits<RawPtr<T> > : public PointerParamStorageTraits<T*, bli nk::IsGarbageCollectedType<T>::value> { | 1401 struct ParamStorageTraits<RawPtr<T> > : public PointerParamStorageTraits<T*, bli nk::IsGarbageCollectedType<T>::value> { |
| 1401 }; | 1402 }; |
| 1402 | 1403 |
| 1403 } // namespace WTF | 1404 } // namespace WTF |
| 1404 | 1405 |
| 1405 #endif | 1406 #endif |
| OLD | NEW |