This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Add support for v8.9-A/v9.4-A Debug and PMU extensions
ClosedPublic

Authored by pratlucas on Nov 23 2022, 2:31 AM.

Details

Summary

This adds support for the 2022 Debug and PMU extensions that are part of
the v8.9-A and v9.4-A architecture versions. This includes:

  • New archtecture extension for the v9.4-A Instrumentation Extension (FEAT_ITE), including 'trcit' instruction and system registers
  • New system registers for:
    • 2022 Debug features (FEAT_Debugv8p9)
    • 2022 Performance Monitors Extension features (FEAT_PMUv3p9)
    • PMU Snapshot extension (FEAT_PMUv3_SS)
    • PMU Fixed-function instruction counter (FEAT_PMUv3_ICNTR)
    • System Performance Monitors Extension (FEAT_SPMU)
    • Synchornous-exception-based event profiling (FEAT_SEBEP)
    • Fine Grained Traps Extension (FEAT_FGT2)
    • SPE Data Source filtering (FEAT_SPE_FDS)

More information on the new extensions can be found on:

Changes by Son Tuan Vu, Sam Elliott and me.

Diff Detail

Event Timeline

pratlucas created this revision.Nov 23 2022, 2:31 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 23 2022, 2:31 AM
pratlucas requested review of this revision.Nov 23 2022, 2:31 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 23 2022, 2:31 AM
This revision is now accepted and ready to land.Nov 23 2022, 3:29 AM
pratlucas edited the summary of this revision. (Show Details)Nov 23 2022, 3:33 AM
This revision was landed with ongoing or failed builds.Nov 24 2022, 8:15 AM
This revision was automatically updated to reflect the committed changes.