update 1-op transcendentals
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 5 Aug 2019 00:29:20 +0000 (01:29 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 5 Aug 2019 00:29:20 +0000 (01:29 +0100)
rv_major_opcode_1010011.mdwn

index 28d757d422dcc2802a2f2b8011bdb2ad9bb7c723..934ddf58d08715775a48a542f139f479cfef8c2a 100644 (file)
@@ -11,6 +11,7 @@ Publicly-known FP proposals:
 
 * Zfrsqrt - Reciprocal SQRT <http://bugs.libre-riscv.org/show_bug.cgi?id=110>
 * Zftrans - Transcendentals (FSIN, FCOS, FATAN, FPOW, FEXP, FLOG, FRCP)
+  <http://bugs.libre-riscv.org/show_bug.cgi?id=127>
 * Extension of formats to cover FP16 (RISC-V ISA Manual Table 11.3 "fmt field")
 * HI-half FP MV - <https://github.com/riscv/riscv-isa-manual/pull/301>
   <https://groups.google.com/a/groups.riscv.org/forum/m/#!topic/isa-dev/kXgfFqgBv-c>
@@ -179,7 +180,7 @@ Brownfield encodings available.
 
 Brownfield encodings available.
 
-## funct5 = 01011
+## funct5 = 01011 - 1-op Transcendentals <a name="transcendentals_1op"></a>
 
 This table uses rs2 for encoding 1-operand FP operations, using
 funct3 to specify the "rounding" mode
@@ -190,35 +191,35 @@ funct5  | SDHQ    | rs2    | rs1  | funct3 | rd    | opcode  | name          |
  5      | 2       | 5      | 5    | 3      | 5     |   7     |               |
 01011   | xx      | 00000  | rs1  | rm     | rd    | 1010011 | FSQRT.xx      |
 01011   | xx      | 00001  | rs1  | rm     | rd    | 1010011 | **FRSQRT.xx** |
-01011   | xx      | 00010  | rs1  | rm     | rd    | 1010011 | **FSIN.xx**   |
-01011   | xx      | 00011  | rs1  | rm     | rd    | 1010011 | **FCOS.xx**   |
-01011   | xx      | 00100  | rs1  | rm     | rd    | 1010011 | **FATAN.xx**  |
-01011   | xx      | 00101  | rs1  | rm     | rd    | 1010011 | **FEXP.xx**   |
-01011   | xx      | 00110  | rs1  | rm     | rd    | 1010011 | **FLOG.xx**   |
-01011   | xx      | 00111  | rs1  | rm     | rd    | 1010011 | **FRCP.xx**   |
-01011   | xx      | 01000  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01001  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01010  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01011  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01100  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01101  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01110  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 01111  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10000  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10001  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10010  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10011  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10100  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10101  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10110  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 10111  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11000  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11001  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11010  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 00010  | rs1  | rm     | rd    | 1010011 | **FRCP.xx**   |
+01011   | xx      | 00011  | rs1  | rm     | rd    | 1010011 | **CBRT.xx**   |
+01011   | xx      | 00100  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 00101  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 00110  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 00111  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 01000  | rs1  | rm     | rd    | 1010011 | **FEXP2.xx**  |
+01011   | xx      | 01001  | rs1  | rm     | rd    | 1010011 | **FLOG2.xx**  |
+01011   | xx      | 01010  | rs1  | rm     | rd    | 1010011 | **FEXPM1.xx** |
+01011   | xx      | 01011  | rs1  | rm     | rd    | 1010011 | **FLOGP1.xx** |
+01011   | xx      | 01100  | rs1  | rm     | rd    | 1010011 | **FEXP.xx**   |
+01011   | xx      | 01101  | rs1  | rm     | rd    | 1010011 | **FLOG.xx**   |
+01011   | xx      | 01110  | rs1  | rm     | rd    | 1010011 | **FEXP10.xx** |
+01011   | xx      | 01111  | rs1  | rm     | rd    | 1010011 | **FLOG10.xx** |
+01011   | xx      | 10000  | rs1  | rm     | rd    | 1010011 | **FSIN.xx**   |
+01011   | xx      | 10001  | rs1  | rm     | rd    | 1010011 | **FCOS.xx**   |
+01011   | xx      | 10010  | rs1  | rm     | rd    | 1010011 | **FTAN.xx**   |
+01011   | xx      | 10011  | rs1  | rm     | rd    | 1010011 | **FTAN2.xx**  |
+01011   | xx      | 10100  | rs1  | rm     | rd    | 1010011 | **FSINPI.xx** |
+01011   | xx      | 10101  | rs1  | rm     | rd    | 1010011 | **FCOSPI.xx** |
+01011   | xx      | 10110  | rs1  | rm     | rd    | 1010011 | **FTANPI.xx** |
+01011   | xx      | 10111  | rs1  | rm     | rd    | 1010011 | **FATAN2PI.xx**|
+01011   | xx      | 11000  | rs1  | rm     | rd    | 1010011 | **FSINH.xx**  |
+01011   | xx      | 11001  | rs1  | rm     | rd    | 1010011 | **FCOSH.xx**  |
+01011   | xx      | 11010  | rs1  | rm     | rd    | 1010011 | **FTANH.xx**  |
 01011   | xx      | 11011  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11100  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11101  | rs1  | rm     | rd    | 1010011 | ?             |
-01011   | xx      | 11110  | rs1  | rm     | rd    | 1010011 | ?             |
+01011   | xx      | 11100  | rs1  | rm     | rd    | 1010011 | **FASINH.xx** |
+01011   | xx      | 11101  | rs1  | rm     | rd    | 1010011 | **FACOSH.xx** |
+01011   | xx      | 11110  | rs1  | rm     | rd    | 1010011 | **FATANH.xx** |
 01011   | xx      | 11111  | rs1  | rm     | rd    | 1010011 | ?             |
 """]]