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

[morello] Add Morello ACLE specification. #1

Merged
merged 6 commits into from
Mar 11, 2021
Merged

[morello] Add Morello ACLE specification. #1

merged 6 commits into from
Mar 11, 2021

Conversation

fpetrogalli
Copy link
Contributor

Sources of the document Morello Supplement to the Arm C Language Extensions, originally published at
https://developer.arm.com/documentation/102273/latest.

The original rST sources have gone through minor editorial tweaks to
render correctly on github and to create a PDF version via the tool
rst2pdf.

Francesco Petrogalli added 6 commits March 10, 2021 21:40
Sources of the document `Morello Supplement to the Arm C Language
Extensions`, originally published at
https://developer.arm.com/documentation/102273/latest.

The original rST sources have gone through minor editorial tweaks to
render correctly on github and to create a PDF version via the tool
`rst2pdf`.
@fpetrogalli
Copy link
Contributor Author

Requesting review to @sbaranga-arm . I have to figure out why I cannot do this simply by adding the username to the reviewers list...

Copy link
Contributor

@sbaranga-arm sbaranga-arm left a comment

Choose a reason for hiding this comment

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

LGTM

@fpetrogalli fpetrogalli merged commit f3d0231 into ARM-software:main Mar 11, 2021
@fpetrogalli fpetrogalli deleted the add-morello-specifications branch March 11, 2021 14:27
labrinea added a commit to labrinea/acle that referenced this pull request Nov 4, 2024
…ehavior.

Feature `rpres` allows an increase in the precision of the single-precision
floating-point reciprocal estimate and reciprocal square root estimate
from an 8-bit mantissa to a 12-bit mantissa depending on the value FPCR.AH
of the Floating-point Control Register.

Similarly, `ebf16` allows existing floating-point instructions (BFDOT, BFMMLA,
BFMOPA, BFMOPS, and BFVDOT) to change numeric behaviour depending on the
value FPCR.EBF of the Floating-point Control Register.

Feature `memtag3` allows Tag Check Faults to change behaviour depending on
the value SCTLR_ELx.{TCF, TCF0} of the System Control Register.

The runtime detection in FMV does not examine the content of control
registers, therefore runtime dispatch cannot be based on that. One may
argue there is value in altering the control register from a version,
for example "msr dit, ARM-software#1" if the feature is available on hardware. The
registers FPCR and SCTLR_ELx can be accessed in the absence of rpres,
ebf16, and memtag3, making it hard to justify adding them to the compiler.
vhscampos pushed a commit that referenced this pull request Nov 6, 2024
…ehavior. (#355)

Feature `rpres` allows an increase in the precision of the
single-precision
floating-point reciprocal estimate and reciprocal square root estimate
from an 8-bit mantissa to a 12-bit mantissa depending on the value
FPCR.AH
of the Floating-point Control Register.

Similarly, `ebf16` allows existing floating-point instructions (BFDOT,
BFMMLA,
BFMOPA, BFMOPS, and BFVDOT) to change numeric behaviour depending on the
value FPCR.EBF of the Floating-point Control Register.

Feature `memtag3` allows Tag Check Faults to change behaviour depending
on
the value SCTLR_ELx.{TCF, TCF0} of the System Control Register.

The runtime detection in FMV does not examine the content of control
registers, therefore runtime dispatch cannot be based on that. One may
argue there is value in altering the control register from a version,
for example "msr dit, \#1" if the feature is available on hardware. The
registers FPCR and SCTLR_ELx can be accessed in the absence of rpres,
ebf16, and memtag3, making it hard to justify adding them to the
compiler.
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