Skip to content
This repository has been archived by the owner on Apr 11, 2024. It is now read-only.

Commit

Permalink
Add a possible justification for the multiarch specifier change.
Browse files Browse the repository at this point in the history
This is without the commercial reasons (see the linked PR) to hopefully
make the change more palatable to the angry mob of unknowing readers.

For the record: this is DEFINITELY NOT the full reason behind the
closed-door decision. But this is about as close as we community people
can get in persuading the depressed ourselves, and about all I can
disclose after having multiple private conversations with relevant
parties, without inflicting damage to anyone at Loongson or Loongson as
a whole (we don't really want to openly criticize Loongson for tweaking
a 1-year-old document for primarily commercial reasons, but again it's
arguably fair for a privately-controlled ISA to evolve like this).

See: #80
  • Loading branch information
xen0n committed Feb 11, 2023
1 parent 2e2613d commit c40cbe2
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 0 deletions.
2 changes: 2 additions & 0 deletions docs/LoongArch-toolchain-conventions-CN.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,8 @@ ABI 配置的需要。若不能,则应根据下表,在默认可用指令集
本《约定》的 1.00 版本曾规定了基础 ABI 使用 64 位浮点寄存器传参时的
`<fabi_suffix>` 后缀为 `f64` (意味着类似 `loongarch64-linux-gnuf64` 的
multiarch 架构标识符取值)。
2.00 版本起将其改为空字符串,是考虑到最常见的组合适合尽量短的名字,
因此不介意文本上的不兼容变更。
为尽可能维持向后兼容,应在见到 `gnuf64` 这一目标元组环境字段取值时,
将其视为(标准化为) `gnu` 如果这样做因不会带来其他超越近处业务逻辑的外部副作用而可行。
(例如:如果维持对 `gnuf64` 的兼容性涉及必须添加符号链接或复制文件,
Expand Down
3 changes: 3 additions & 0 deletions docs/LoongArch-toolchain-conventions-EN.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,9 @@ specifier, respectively.
Version 1.00 of this document mandated that a `<fabi-suffix>` of `f64` shall
be used for cases where the base ABI used 64-bit FPRs for parameter passing
(meaning multiarch architecture specifier values resembling `loongarch64-linux-gnuf64`).
From version 2.00 onwards it was changed into the empty string;
the incompatible textual change is justified by the rationale that shorter
names are preferred for the more ubiquitous combinations.
For maintaining best-effort backwards compatibility, the target tuple environment
value `gnuf64` shall be treated as (canonicalized into) `gnu` if doing so
would be feasible by not bringing any external side effects that goes beyond
Expand Down

0 comments on commit c40cbe2

Please sign in to comment.