Skip to content

riscv_p_ext

Tsukasa OI edited this page Oct 10, 2022 · 1 revision

Draft Extension: P

Feature Description

The last GNU Binutils port of P-extension proposal is by Sinan LIN's implementation based on GNU Binutils 2.36.1 and a bit older draft specification version: 0.9.4.

My implementation is a testbed of my proposed common framework and...

  • Based on GNU Binutils master branch
  • Implements P-extension proposal version 0.9.11 (latest) except WEXT instruction alias
    • WEXT is formerly an independent instruction but moved to an alias (implemented with FSR). However, this is considered harmful to toolchains (assemblers).
  • 6 encoding differences between Sinan's implementation (excluding WEXT)
    • 2 are caused by different P-extension version
    • 4 are caused by Sinan's implementation's bug while partially adopting latest draft of P-extension (PACK and PACKU operand order is different).
  • Utilizes X operand type (introduced with T-Head custom extension but regarded as general purpose)
Clone this wiki locally