summaryrefslogtreecommitdiffstats
path: root/src/tools/tracegen/provider.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Change license for tools filesLucie Gérard2024-02-071-1/+1
| | | | | | | | | | | | According to QUIP-18 [1], all tools file should be LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I89e08859871d29a9cf8c7a56b30b07b2c2f34b42 Reviewed-by: Kai Köhne <[email protected]>
* tracegen: Fix handling enumerators with duplicate valuesAntti Määttä2023-02-101-6/+10
| | | | | | | | | | Aggregate the names of the same value enumerators. The values can also be hexadecimal so handle them also. Pick-to: 6.5 Change-Id: I89693d7e3b8f6c051b298401dcbe8a9f5c0a38aa Reviewed-by: Antti Määttä <[email protected]> Reviewed-by: Tomi Korpipää <[email protected]>
* tracegen: Add support for QSizeF and QRectF typesAntti Määttä2023-02-101-1/+3
| | | | | | | Pick-to: 6.5 Change-Id: Ie19523b84026312c3d5a597914abc2622dba3f68 Reviewed-by: Antti Määttä <[email protected]> Reviewed-by: Tomi Korpipää <[email protected]>
* CTF: Move event metadata generation to the wrapperAntti Määttä2023-02-101-18/+15
| | | | | | | | | | | This fixes the metadata generation when cross compiling. The metadata needs to be generated based on the type info of the target. Currently the metadata is generated in the tool based on the host type info. Task-number: QTBUG-110270 Pick-to: 6.5 Change-Id: Ibcdcbd690620afc532d6007cf036229342bdcc31 Reviewed-by: Volker Hilsheimer <[email protected]>
* tracegen: Give warning if flag value is npot2Antti Määttä2023-01-311-2/+2
| | | | | | | | | Flag values can have mask values, which have multiple bits set. Give warning instead of panic if a flag value is not power of two. Pick-to: 6.5 Change-Id: Ie67a5d820203219ce2eb91faf5dea8d6051a5e08 Reviewed-by: Tomi Korpipää <[email protected]>
* Add metadata support to tracegen and tracepointgen toolsAntti Määttä2023-01-131-53/+213
| | | | | | | | | | | Adds ability to add textual metadata for enumerations and flags to the traces so that they provide more information to the user instead of just numbers. Implement these for both existing backends. Task-number: QTBUG-106399 Pick-to: 6.5 Change-Id: Ibab00dd370d019891cf9ad6e65e6f9d868e32dce Reviewed-by: Tomi Korpipää <[email protected]>
* Fix array handling in tracegen toolAntti Määttä2023-01-131-2/+3
| | | | | | | | | | | Remove the array field type. We need to know the basic datatype as well for future backends. Use the arrayLen instead. Add the missing array handling for etw backend. Task-number: QTBUG-106399 Pick-to: 6.5 Change-Id: I97c38240bd1c79c0e61d268a7d780016b341f110 Reviewed-by: Tomi Korpipää <[email protected]>
* tracegen: add qint64 supportRafael Roquetto2022-09-151-0/+1
| | | | | Change-Id: I4f4c5430ce86e364819ae35f3089bacf1d253484 Reviewed-by: Shawn Rutledge <[email protected]>
* tracegen: add support for QSizeRafael Roquetto2022-09-031-1/+2
| | | | | | Change-Id: I7228f5ebbcbd577a66a7a368fb4d64c4c7e55a25 Reviewed-by: Rafael Roquetto <[email protected]> Reviewed-by: Shawn Rutledge <[email protected]>
* Use SPDX license identifiersLucie Gérard2022-05-161-38/+2
| | | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Task-number: QTBUG-67283 Change-Id: Id880c92784c40f3bbde861c0d93f58151c18b9f1 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Lars Knoll <[email protected]> Reviewed-by: Jörg Bornemann <[email protected]>
* Tools: replace remaining uses of QLatin1String with QLatin1StringViewSona Kurazyan2022-05-031-1/+1
| | | | | | | Task-number: QTBUG-98434 Change-Id: Ie136f600f823019c29461561d4e30be66a66e87b Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Marc Mutz <[email protected]>
* Tools: use _L1 for for creating Latin-1 string literalsSona Kurazyan2022-05-031-4/+6
| | | | | | | | | As a drive-by, fix qsizetype -> int narrowing conversion warnings for the touched lines. Task-number: QTBUG-98434 Change-Id: I6d4712a71b5ebf3f379f1f98ea476557bce963ef Reviewed-by: Marc Mutz <[email protected]>
* Tools: stop using QLatin1Char constructor for creating char literalsSona Kurazyan2022-05-021-3/+3
| | | | | | | | | | | Required for porting away from QLatin1Char/QLatin1String in scope of QTBUG-98434. As a drive-by, fix qsizetype -> int narrowing conversion warnings for the touched lines. Change-Id: Ib9e01ede4e0d7869fc95414d36f37df4a30b16b4 Reviewed-by: Marc Mutz <[email protected]>
* Port tracedef to QRegularExpressionLars Knoll2020-04-131-20/+22
| | | | | Change-Id: I38bbf36719c99d4fda102eca375011c38792dd4a Reviewed-by: Rafael Roquetto <[email protected]>
* Use Qt::SplitBehavior in preference to QString::SplitBehaviorEdward Welbourne2020-02-281-2/+1
| | | | | | | | The Qt version was added in 5.14 "for use as eventual replacement for QString::SplitBehavior." Move another step closer to that goal. Change-Id: I399b5ea56e9255e775ca1746632f7421519a6616 Reviewed-by: Volker Hilsheimer <[email protected]>
* Forward declare all types required for compilation with `-trace`Milian Wolff2019-04-051-0/+19
| | | | | | | | | | | | | | | This patch fixes compilation with `-trace lttng` or `-trace etw`. We need to forward declare QEvent, QImageReader etc., otherwise the types will be unknown while compiling the trace points. In order to handle this generically, the tracegen utility is extended to support a 'prefix text' in the `*.tracepoints` input files. Any text within curly braces will be embedded as-is in the generated file. This can then be used to add forward declarations for the types we need, including potential namespaces and such. Change-Id: I5cb16763ce0fcb48ce3ea4577578d468ff3a4f4b Reviewed-by: Konstantin Tokarev <[email protected]>
* Tracegen: code tidiesGiuseppe D'Angelo2018-06-291-16/+9
| | | | | | | | | | | | | | | | | * Do not rely on the side-effect that QTextStream returns _null_ strings (rather than empty strings) to signal EOF; just check for it, making the code easier to read. * Scope a variable properly * Use the char-based functions, rather than string-based functions (e.g. QString::split(QChar), not QString::split(QString)) when we're actually passing just one character * Make error cases more verbose Change-Id: I415773a60ea1b9013193a9a77e52655a6459047d Reviewed-by: Rafael Roquetto <[email protected]>
* Tracegen: add support for pointers and intptr-like typesGiuseppe D'Angelo2018-06-281-3/+11
| | | | | | | | | | | In general we want to support pointers and pointer-like types (intptr and its variations); the main use case is tracing an object's address. Adjust the lttgt generator to use hex formatting for this kind of aguments; ETW recognizes the pointer argument type automatically. Change-Id: I8249a49b6d0b2d468b84c0fbb7624625421cde9a Reviewed-by: Rafael Roquetto <[email protected]>
* Support for LTTNG and ETW tracingRafael Roquetto2018-01-281-0/+304
This commit introduces minimal support for instrumentation within Qt. Currently, only LTTNG/Linux and ETW/Windows are supported. Change-Id: I59b48cf83acf5532a998bb493e6379e9177e14c8 Reviewed-by: Oswald Buddenhagen <[email protected]> Reviewed-by: Shawn Rutledge <[email protected]> Reviewed-by: Thiago Macieira <[email protected]>