All trigger registers are optional#431
Conversation
See #422. This might break software that's not ready for the possibility, but I believe the privilege spec is already clear that the Debug CSRs are optional.
|
I wonder if it would be useful to remind readers in the trigger intro section that if the optional trigger registers don't exist, then accessing them will cause an illegal instruction exception. The current sequence described in the intro would fail after step 1 (write 0 to tselect) with an exception. A related question would be how a debugger is supposed to determine if triggers exist. Is the only way to attempt to write tselect and see if it generates an exception? |
Good suggestion. I've clarified that.
That's right. If a debugger only cares about the number of registers, then a binary search should find that relatively quickly. |
Ernie Edgar (ernie-sifive)
left a comment
There was a problem hiding this comment.
Great, I think that clarifies the discovery process.
See #422. This might break software that's not ready for the
possibility, but I believe the privilege spec is already clear that the
Debug CSRs are optional.