diff options
author | Andrew Waterman <andrew@sifive.com> | 2017-07-20 16:08:46 -0700 |
---|---|---|
committer | Andrew Waterman <andrew@sifive.com> | 2017-07-20 16:09:42 -0700 |
commit | b1acc301a3995e64bc8c1bf8bb094bf8b20d8912 (patch) | |
tree | 693ad556c97feb83aff8f53fd0ff7ce650485d96 | |
parent | 10bbb28d84bd9fad81bb03f1f55404e5a024368f (diff) | |
download | riscv-isa-manual-b1acc301a3995e64bc8c1bf8bb094bf8b20d8912.zip riscv-isa-manual-b1acc301a3995e64bc8c1bf8bb094bf8b20d8912.tar.gz riscv-isa-manual-b1acc301a3995e64bc8c1bf8bb094bf8b20d8912.tar.bz2 |
Add note about C.MV
-rw-r--r-- | src/c.tex | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -968,6 +968,13 @@ These instructions use the CR format. C.MV copies the value in register {\em rs2} into register {\em rd}. C.MV expands into {\tt add rd, x0, rs2}. +\begin{commentary} +C.MV expands to a different instruction than the canonical MV +pseudoinstruction, which instead uses ADDI. Implementations that handle MV +specially, e.g. using register-renaming hardware, may find it more convenient +to expand C.MV to MV instead of ADD, at slight additional hardware cost. +\end{commentary} + C.ADD adds the values in registers {\em rd} and {\em rs2} and writes the result to register {\em rd}. C.ADD expands into {\tt add rd, rd, rs2}. |