[Webkit-unassigned] [Bug 109597] Cache timer heap pointer to timers
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Feb 12 18:34:17 PST 2013
https://bugs.webkit.org/show_bug.cgi?id=109597
--- Comment #4 from Alexey Proskuryakov <ap at webkit.org> 2013-02-12 18:36:31 PST ---
(From update of attachment 187896)
View in context: https://bugs.webkit.org/attachment.cgi?id=187896&action=review
It is worrisome that these functions are so incredibly hot that TLS access - a very fast operation - shows up on the profile.
> Source/WebCore/platform/Timer.h:85
> + const Vector<TimerBase*>& timerHeap() const { ASSERT(m_cachedThreadGlobalTimerHeap); return *m_cachedThreadGlobalTimerHeap; }
> + Vector<TimerBase*>& timerHeap() { ASSERT(m_cachedThreadGlobalTimerHeap); return *m_cachedThreadGlobalTimerHeap; }
I don't think that differentiating between the two is meaningful. The first function casts away constness from "this" anyway, so const safety is violated despite having a separate const version of this function.
I suggest always returning a non-const reference, the timer heap is never immutable.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list