abi-aa icon indicating copy to clipboard operation
abi-aa copied to clipboard

System V ABI for the Arm® 64-bit Architecture (AArch64): Q-o-I uses "standard" (unexpected) instead of "document" (expected)

Open pmor13 opened this issue 8 months ago • 2 comments

https://github.com/ARM-software/abi-aa/blob/main/sysvabi64/sysvabi64.rst#about-this-document (emphases added):

Q-o-I Quality of Implementation – a quality, behavior, functionality, or mechanism not required by this standard, but which might be provided by systems conforming to it. Q-o-I is often used to describe the toolchain-specific means by which a standard requirement is met.

It seems that "standard" needs to be "document" in the text above.

Also: the name of the document is "System V ABI for the Arm® 64-bit Architecture (AArch64)". However, in the text of the document the document is referred as "ABI for the Arm 64-bit Architecture". Is it a typo? Why not using a unified document name?

Also: it says:

The ABI for the Arm 64-bit Architecture uses the following terms and abbreviations. ... Q-o-I

Searching for "Q-o-I" produces no results. Meaning that term "Q-o-I" is not used. Confused.

pmor13 avatar Apr 08 '25 13:04 pmor13

It seems that "standard" needs to be "document" in the text above.

If I've understood you, this would change the text to something like:

Q-o-I
Quality of Implementation – a quality, behavior, functionality, or mechanism not required by this document, but which might be provided by systems conforming to it. Q-o-I is often used to describe the toolchain-specific means by which a documented requirement is met.

The Q-o-I text is boilerplate that is added to all the documents, or at least all that I know of. Changing it is possible, but it would need to be done consistently across all the documents.

Also: the name of the document is "System V ABI for the Arm® 64-bit Architecture (AArch64)". However, in the text of the document the document is referred as "ABI for the Arm 64-bit Architecture". Is it a typo? Why not using a unified document name?

Not a typo. The ABI for the 64-bit Architecture is collectively all the documents that end in 64. For example aaelf64, aapcs64, and sysvabi64. There's a separate family of documents for the 32-bit ABI aaelf32, aapcs32 etc.

Searching for "Q-o-I" produces no results. Meaning that term "Q-o-I" is not used. Confused.

As mentioned previously, "Q-o-I" is part of the boilerplate for most if not all of the documents. It isn't used within the sysvabi yet. An example of it being used elsewhere https://github.com/ARM-software/abi-aa/blob/main/rtabi32/rtabi32.rst#49library-file-organization

The Q-o-I definition could be removed until it is first used, but it is often used and most contributors to the ABI already expect it to be in the definitions so may just use it without checking to put it back in.

smithp35 avatar Apr 08 '25 13:04 smithp35

@smithp35 Thanks for the feedback. Yes, you understood correctly (I'm not sure which one is grammatically correct: "documented requirement" or "document requirement" or "requirement imposed by this document").

P.S. I'm new to this document.

pmor13 avatar Apr 08 '25 17:04 pmor13