Skip to content

feat(ctrace): decode Armv8-M DWT match packets - #2592

Merged
thorstendb-ARM merged 1 commit into
mainfrom
dev-ctrace-dwt-match
Sep 4, 2026
Merged

feat(ctrace): decode Armv8-M DWT match packets#2592
thorstendb-ARM merged 1 commit into
mainfrom
dev-ctrace-dwt-match

Conversation

@thorstendb-ARM

Copy link
Copy Markdown
Contributor

Summary

Add support for Armv8-M Data Trace Match packets.

  • Decode comparator-only match packets instead of reporting an unsupported address payload.
  • Emit CSV dwt rows with the comparator in source; value, PC, and offset remain empty.
  • Add a compact DWT_MATCH CTF event containing the comparator and trace-quality information.
  • Visualize matches in Trace Compass as 1 µs Something happened pulses.
  • Preserve pending DWT fragments before emitting a match.

Tests

  • Added unit tests for decoding, CSV, CTF, filtering, metadata, and XML.
  • Added an 18-byte synthetic Armv8-M SWO fixture containing synchronization, match packets for comparators 0–3, and local timestamps.
  • The fixture is generated from the architecture specification and was not captured from real hardware.
  • All ctrace unit, integration, and executable tests pass.

Checklist

  • 🤖 This change is covered by unit tests (if applicable).
  • 🤹 Manual testing has been performed (if necessary).
  • 🛡️ Security impacts have been considered (if relevant).
  • 📖 Documentation updates are complete (if required).
  • 🧠 Third-party dependencies and TPIP updated (if required).

@codecov

codecov Bot commented Sep 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 72.58%. Comparing base (a46c6e4) to head (739e082).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2592      +/-   ##
==========================================
+ Coverage   72.54%   72.58%   +0.03%     
==========================================
  Files         185      185              
  Lines       30559    30602      +43     
  Branches    17993    18003      +10     
==========================================
+ Hits        22170    22213      +43     
  Misses       6080     6080              
  Partials     2309     2309              
Flag Coverage Δ
ctrace-cov 99.79% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
tools/ctrace/src/decode/DwtPacketDecoder.cpp 100.00% <100.00%> (ø)
tools/ctrace/src/model/TraceEvent.h 100.00% <ø> (ø)
tools/ctrace/src/model/TraceSelection.cpp 100.00% <100.00%> (ø)
tools/ctrace/src/output/csv/CsvRowMapper.cpp 100.00% <100.00%> (ø)
tools/ctrace/src/output/ctf/CtfEncoder.cpp 100.00% <100.00%> (ø)
tools/ctrace/src/output/ctf/CtfMetadataWriter.cpp 100.00% <100.00%> (ø)
tools/ctrace/src/output/ctf/CtfSchema.h 100.00% <100.00%> (ø)
...ls/ctrace/src/output/ctf/TraceCompassXmlWriter.cpp 98.78% <100.00%> (+0.09%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown

Test Results

  4 files    4 suites   2s ⏱️
206 tests 206 ✅ 0 💤 0 ❌
412 runs  405 ✅ 7 💤 0 ❌

Results for commit 739e082.

@jreineckearm jreineckearm left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look reasonable, not tested though due to the lack of test HW.

@thorstendb-ARM
thorstendb-ARM merged commit 66cb607 into main Sep 4, 2026
27 of 28 checks passed
@thorstendb-ARM
thorstendb-ARM deleted the dev-ctrace-dwt-match branch September 4, 2026 11:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants