Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion header.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,8 @@ endif::[]
- Removed ambiguity between 'last' and 'final'. Last was previously used to mean both the instruction before the current one, and the final instruction traced. +
- Clarified behaviour when trace-on and trace-off triggers occur both occur in the same cycle (see <<sec:trigger>>) +
- Clarified that full synchronization also takes place on a privilege change (see <<sec:synchronization>> and <<sec:thaddr>>) +
- Reworded jump classifications in jump classifications in <<sec:InstructionInterfaceRequirements>> to align with terminology used in other specifications
- Reworded jump classifications in jump classifications in <<sec:InstructionInterfaceRequirements>> to align with terminology used in other specifications +
- Clarified when to issue sync-support packet when trace is enabled (see <<sec:format33>>)

|===

Expand Down
13 changes: 6 additions & 7 deletions payload.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -237,15 +237,14 @@ instruction context.
[[sec:format33]]
=== Format 3 subformat 3 - Support

This packet provides supporting information to aid the decoder. It is
issued when
This packet provides supporting information to aid the decoder. It must be issued:

* Trace is enabled or disabled;
* The operating mode changes;
* One or more trace packets cannot be sent (for example, due
back-pressure from the packet transport infrastructure).
* When trace is enabled, and before the first sync packet, in order to ensure the decoder is aware of how the encoder is configured. This could be as late as when *trTeInstTracing* becomes 1, but it is recommended this be sent as soon as *trTeEnable* changes from 0 to 1. This reduces the likelihood of having to generate two packets (support and sync-start) at the point tracing actually starts;
* When tracing ceases for any reason (*trTeEnable* or *trTeInstTracing* set to 0, trace-off trigger, halt, reset, loss of filter qualification, etc.), in order to inform the decoder that the preceding packet reported the address of the final traced instruction;
* If one or more trace packets cannot be sent (for example, due back-pressure from the packet transport infrastructure);
* If the operating mode of the encoder changes such that the the information output in a previous support packet no longer applies (i.e. if *encoder_mode*, *ioptions*, *doptions* or *denable* change).

The *options* field is a placeholder that must be replaced by an
The *ioptions* and *doptions* fields are placeholders that must be replaced by an
implementation specific set of individual bits - one for each of the
optional modes supported by the encoder.

Expand Down
Loading