From d25c7ea137e4b9d562bc91127df69a6f91e47cff Mon Sep 17 00:00:00 2001 From: Tim Henning Date: Tue, 28 May 2019 10:47:47 +0200 Subject: [PATCH] Tracing: Improve event adding performance by using at() instead of [] This speeds up adding events using Timeline::TimelineModel::insert() by 20% in release mode and reduces it to a third in debug mode by avoiding a check whether the container is detached. Change-Id: I3c81120047c33b3ce20cfb4cd309cbe17694b141 Reviewed-by: Milian Wolff Reviewed-by: Ulf Hermann --- src/libs/tracing/timelinemodel_p.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libs/tracing/timelinemodel_p.h b/src/libs/tracing/timelinemodel_p.h index 53136571be2..bc2ac768509 100644 --- a/src/libs/tracing/timelinemodel_p.h +++ b/src/libs/tracing/timelinemodel_p.h @@ -90,7 +90,7 @@ public: ranges.prepend(start); return 0; } - const Range &range = ranges[--i]; + const Range &range = ranges.at(--i); if (range.start < start.start || (range.start == start.start && range.duration >= start.duration)) { ranges.insert(++i, start); @@ -106,7 +106,7 @@ public: endTimes.prepend(end); return 0; } - if (endTimes[--i].end <= end.end) { + if (endTimes.at(--i).end <= end.end) { endTimes.insert(++i, end); return i; }