summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMilian Wolff <milian.wolff@kdab.com>2019-04-26 15:16:18 +0200
committerMilian Wolff <milian.wolff@kdab.com>2019-04-30 07:42:10 +0000
commite5eaae100b35d97f22a388831a5b9cd712053f3f (patch)
tree87ee1df46f7dbf54477640db490be64f7261ead2 /src
parent3308a81942d33f524b3fc61492bd67c4e2b9072d (diff)
Refactor QMetaObject::activate tracepoints
Use Q_TRACE_SCOPE and the corresponding naming scheme. Additionally, don't change the behavior of the code when tracing is enabled, i.e. continue to return early if possible. Change-Id: I9ba9679869db1541a19bc832beede902224c52f2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/kernel/qobject.cpp34
-rw-r--r--src/corelib/qtcore.tracepoints16
2 files changed, 25 insertions, 25 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index 2a05f7f383..68c5460b6a 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -3664,19 +3664,18 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
if (sender->d_func()->blockSig)
return;
+ Q_TRACE_SCOPE(QMetaObject_activate, sender, signal_index);
+
if (sender->d_func()->isDeclarativeSignalConnected(signal_index)
&& QAbstractDeclarativeData::signalEmitted) {
- Q_TRACE(QMetaObject_activate_begin_declarative_signal, sender, signal_index);
+ Q_TRACE_SCOPE(QMetaObject_activate_declarative_signal, sender, signal_index);
QAbstractDeclarativeData::signalEmitted(sender->d_func()->declarativeData, sender,
signal_index, argv);
- Q_TRACE(QMetaObject_activate_end_declarative_signal, sender, signal_index);
}
if (!sender->d_func()->isSignalConnected(signal_index, /*checkDeclarative =*/ false)
&& !qt_signal_spy_callback_set.signal_begin_callback
- && !qt_signal_spy_callback_set.signal_end_callback
- && !Q_TRACE_ENABLED(QMetaObject_activate_begin_signal)
- && !Q_TRACE_ENABLED(QMetaObject_activate_end_signal)) {
+ && !qt_signal_spy_callback_set.signal_end_callback) {
// The possible declarative connection is done, and nothing else is connected, so:
return;
}
@@ -3686,7 +3685,6 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
qt_signal_spy_callback_set.signal_begin_callback(sender, signal_index,
argv ? argv : empty_argv);
}
- Q_TRACE(QMetaObject_activate_begin_signal, sender, signal_index);
{
QMutexLocker locker(signalSlotLock(sender));
@@ -3717,7 +3715,6 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
locker.unlock();
if (qt_signal_spy_callback_set.signal_end_callback != 0)
qt_signal_spy_callback_set.signal_end_callback(sender, signal_index);
- Q_TRACE(QMetaObject_activate_end_signal, sender, signal_index);
return;
}
@@ -3778,9 +3775,11 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
c->slotObj->ref();
QScopedPointer<QtPrivate::QSlotObjectBase, QSlotObjectBaseDeleter> obj(c->slotObj);
locker.unlock();
- Q_TRACE(QMetaObject_activate_begin_slot_functor, obj.data());
- obj->call(receiver, argv ? argv : empty_argv);
- Q_TRACE(QMetaObject_activate_end_slot_functor, obj.data());
+
+ {
+ Q_TRACE_SCOPE(QMetaObject_activate_slot_functor, obj.data());
+ obj->call(receiver, argv ? argv : empty_argv);
+ }
// Make sure the slot object gets destroyed before the mutex is locked again, as the
// destructor of the slot object might also lock a mutex from the signalSlotLock() mutex pool,
@@ -3796,11 +3795,12 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
locker.unlock();
if (qt_signal_spy_callback_set.slot_begin_callback != 0)
qt_signal_spy_callback_set.slot_begin_callback(receiver, methodIndex, argv ? argv : empty_argv);
- Q_TRACE(QMetaObject_activate_begin_slot, receiver, methodIndex);
- callFunction(receiver, QMetaObject::InvokeMetaMethod, method_relative, argv ? argv : empty_argv);
+ {
+ Q_TRACE_SCOPE(QMetaObject_activate_slot, receiver, methodIndex);
+ callFunction(receiver, QMetaObject::InvokeMetaMethod, method_relative, argv ? argv : empty_argv);
+ }
- Q_TRACE(QMetaObject_activate_end_slot, receiver, methodIndex);
if (qt_signal_spy_callback_set.slot_end_callback != 0)
qt_signal_spy_callback_set.slot_end_callback(receiver, methodIndex);
locker.relock();
@@ -3813,11 +3813,12 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
method,
argv ? argv : empty_argv);
}
- Q_TRACE(QMetaObject_activate_begin_slot, receiver, method);
- metacall(receiver, QMetaObject::InvokeMetaMethod, method, argv ? argv : empty_argv);
+ {
+ Q_TRACE_SCOPE(QMetaObject_activate_slot, receiver, method);
+ metacall(receiver, QMetaObject::InvokeMetaMethod, method, argv ? argv : empty_argv);
+ }
- Q_TRACE(QMetaObject_activate_end_slot, receiver, method);
if (qt_signal_spy_callback_set.slot_end_callback != 0)
qt_signal_spy_callback_set.slot_end_callback(receiver, method);
@@ -3838,7 +3839,6 @@ void QMetaObject::activate(QObject *sender, int signalOffset, int local_signal_i
if (qt_signal_spy_callback_set.signal_end_callback != 0)
qt_signal_spy_callback_set.signal_end_callback(sender, signal_index);
- Q_TRACE(QMetaObject_activate_end_signal, sender, signal_index);
}
/*!
diff --git a/src/corelib/qtcore.tracepoints b/src/corelib/qtcore.tracepoints
index 3a70136741..7078950027 100644
--- a/src/corelib/qtcore.tracepoints
+++ b/src/corelib/qtcore.tracepoints
@@ -32,13 +32,13 @@ QCoreApplication_notify_after_delivery(QObject *receiver, QEvent *event, int typ
QObject_ctor(QObject *object)
QObject_dtor(QObject *object)
-QMetaObject_activate_begin_signal(QObject *sender, int signalIndex)
-QMetaObject_activate_end_signal(QObject *sender, int signalIndex)
-QMetaObject_activate_begin_slot(QObject *receiver, int slotIndex)
-QMetaObject_activate_end_slot(QObject *receiver, int slotIndex)
-QMetaObject_activate_begin_slot_functor(void *slotObject)
-QMetaObject_activate_end_slot_functor(void *slotObject)
-QMetaObject_activate_begin_declarative_signal(QObject *sender, int signalIndex)
-QMetaObject_activate_end_declarative_signal(QObject *sender, int signalIndex)
+QMetaObject_activate_entry(QObject *sender, int signalIndex)
+QMetaObject_activate_exit(QObject *sender, int signalIndex)
+QMetaObject_activate_slot_entry(QObject *receiver, int slotIndex)
+QMetaObject_activate_slot_exit(QObject *receiver, int slotIndex)
+QMetaObject_activate_slot_functor_entry(void *slotObject)
+QMetaObject_activate_slot_functor_exit(void *slotObject)
+QMetaObject_activate_declarative_signal_entry(QObject *sender, int signalIndex)
+QMetaObject_activate_declarative_signal_exit(QObject *sender, int signalIndex)
qt_message_print(int type, const char *category, const char *function, const char *file, int line, const QString &message)