[Libre-soc-isa] [Bug 701] document Matrix REMAP in SVP64
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Sun Nov 5 17:54:46 GMT 2023
https://bugs.libre-soc.org/show_bug.cgi?id=701
--- Comment #5 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Andrey Miroshnikov from comment #4)
> I've been going over the matrix multiply example again, and noticed that the
> maddld (Multiply-Add Low Doubleword) in the 3.1b version of the PowerISA
> spec is in the Linux Compliancy Subset, not SFS or SFFS. See appendix G
> table entry on page 1477 of the document, or page 1503 of the pdf.
(for the next para, read page vii onwards carefully).
it is permitted to implement any additional instructions over-and-above
what is in any given subset. however *some* instructions (such as the
MMA group) are a "all or nothing".
maddld is not one such instruction.
therefore we can add it.
i am checking v3.0C and p1215 figure 94 shows it to be v3.0
000100 ..... 110000VAI78maddhd v3.0 Multiply-Add HighDoubleword
000100 ..... 110001VAI78maddhdu v3.0 Multiply-Add HighDoubleword Unsigned
000100 ..... 110011VAI78maddld v3.0 Multiply-Add Low Doubleword
again: Public v3.1, p1425 figure 92 shows exactly the same. v3.0
checking p1455 in the version i have)
000100 ..... 110000I ..XX maddhd v3.0 p88 Multiply-Add High Doubleword VA-form
so again, v3.0.
let's have a look at the "key" to the table, find out what "..XX" means.
OpenPOWER Compliancy Subsets
X... Instruction included in the Scalar Fixed-Point Compliancy subset
.X.. Instruction included in the Scalar Fixed-Point + Floating-Point Compliancy
..X. Instruction included in the Linux Compliancy subset
...X Instruction included in the AIX Compliancy subset.
that's plain wrong. let's check addi.
001110 ..... XXXX addi P176Add Immediate D-form
not helpful. fcfid
111111 ..... ///// ..... 11010 01110.I .XXX fcfid
ok better. ok so the coding of X is correct.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libre-SOC-ISA
mailing list