Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added clarification on retiring inferable calls in blocks when itype … #184

Merged
merged 7 commits into from
Feb 18, 2025
5 changes: 4 additions & 1 deletion ingressPort.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -306,7 +306,10 @@ block.
*itype* can be 3 or 4 bits wide. If _itype_width_p_ is 3, a single code
(6) is used to indicate all uninferable jumps. This is simpler to
implement, but precludes use of the implicit return mode (see
<<sec:implicit-return>>), which requires jump types to be fully classified.
<<sec:implicit-return>>), which requires jump types to be fully classified.
Note that when _itype_width_p_ is 3 *itype* is 0 used for inferrable calls.
However, inferrable calls must still be the final instruction retired in a
block, otherwise the block would not be comprised of contiguous instructions.

Whilst *iaddr* is typically a virtual address, it does not affect the
encoder's behavior if it is a physical address.
Expand Down
Loading