From: Luke Kenneth Casson Leighton Date: Wed, 3 May 2023 21:21:00 +0000 (+0100) Subject: update ls012 table, it was a bit weird X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6106d0201bda697ba96c419081e2e596523e3c6d;p=libreriscv.git update ls012 table, it was a bit weird --- diff --git a/openpower/pandoc_img.py b/openpower/pandoc_img.py index f665d5dab..5fb6745bb 100755 --- a/openpower/pandoc_img.py +++ b/openpower/pandoc_img.py @@ -81,6 +81,7 @@ def inlinenotes(k, v, f, meta): 'sv/remap': 'REMAP subsystem', 'sv/remap/appendix': 'REMAP Appendix', 'sv/mv.swizzle': 'Swizzle Move', + 'sv/twin_butterfly': 'Twin Butterfly', 'sv/mv.vec': 'Pack / Unpack', 'svp64/appendix': 'SVP64 Appendix', 'sv/svp64/appendix': 'SVP64 Appendix', diff --git a/openpower/sv/rfc/ls012.mdwn b/openpower/sv/rfc/ls012.mdwn index 5559bfc06..5e48b6e7b 100644 --- a/openpower/sv/rfc/ls012.mdwn +++ b/openpower/sv/rfc/ls012.mdwn @@ -74,32 +74,34 @@ Whilst entirely general-purpose there are some categories that these instructions are targetting: Bit-manipulation, Big-integer, cryptography, Audio/Visual, High-Performance Compute, GPU workloads and DSP. +\newpage{} + **Instruction count guide and approximate priority order** -| qty | description | RFC | URL | -| --- | ---- | --- | --- | -| 6 | SVP64 Management | [[ls008]] [[ls009]] [[ls010]] | | +|qty| description | RFC | URL | +|-|-----------------------------------------------|--------|-------------------| +| 6 | SVP64 Management |[[ls008]]
[[ls009]]
[[ls010]] | | | 5 | CR weirds | [[ls015]] | [[sv/cr_int_predication]] | | 4 | INT<->FP mv | [[ls006]] | | | 19 | GPR LD/ST-PostIncrement-Update (saves hugely in hot-loops) | [[ls011]] | | | ~12 | FPR LD/ST-PostIncrement-Update (ditto) | [[ls011]] | | -| 11 | GPR LD/ST-Shifted-PostIncrement-Update (saves hugely in hot-loops) | [[ls011]] | | +| 11 | GPR LD/ST-Shifted-PostIncrement-Update (saves in hot-loops) | [[ls011]] | | | 4 | FPR LD/ST-Shifted-PostIncrement-Update (ditto) | [[ls011]] | | | 26 | GPR LD/ST-Shifted (again saves hugely in hot-loops) | [[ls004]] | | | 11 | FPR LD/ST-Shifted (ditto) | [[ls004]] | | | 2 | Float-Load-Immediate (always saves one LD L1/2/3 D-Cache op) | [[ls002]] | | | 5 | Big-Integer Chained 3-in 2-out (64-bit Carry) | [[ls003]] | [[sv/biginteger]] | | 6 | Bitmanip LUT2/3 operations. high cost high reward | [[ls007]] | [[sv/bitmanip]] | -| 1 | fclass (Scalar variant of xvtstdcsp) || [[sv/fclass]] | -| 5 | Audio-Video || [[sv/av_opcodes]] | +| 1 | fclass (Scalar variant of xvtstdcsp) |TBD| [[sv/fclass]] | +| 5 | Audio-Video |TBD| [[sv/av_opcodes]] | | 2 | Shift-and-Add (mitigates LD-ST-Shift; Cryptography e.g. twofish) | [[ls004]] | | | 2 | BMI group | [[ls014]] | [[sv/vector_ops]] | -| 2 | GPU swizzle || [[sv/mv.swizzle]] | -| 9 | FP DCT/FFT Butterfly (2/3-in 2-out) | [[ls016]] | | -| ~2? | Integer DCT/FFT Butterfly | [[ls016]] | | -| 18 | Trigonometric (1-arg) || [[openpower/transcendentals]] | -| 15 | Transcendentals (1-arg) || [[openpower/transcendentals]] | -| 25 | Transcendentals (2-arg) || [[openpower/transcendentals]] | +| 2 | GPU swizzle |TBD| [[sv/mv.swizzle]] | +| 9 | FP DCT/FFT Butterfly (2/3-in 2-out) | [[ls016]] | [[sv/twin_butterfly]] | +| ~2? | Integer DCT/FFT Butterfly | [[ls016]] | [[sv/twin_butterfly]] | +| 18 | Trigonometric (1-arg) |?| [[openpower/transcendentals]] | +| 15 | Transcendentals (1-arg) |?| [[openpower/transcendentals]] | +| 25 | Transcendentals (2-arg) |?| [[openpower/transcendentals]] | Summary tables are created below by different sort categories. Additional columns (and tables) as necessary can be requested to be added as part