From cc3803f6fffd4506bcac794d381403aefdd8dfa0 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Wed, 23 Jul 2025 19:04:54 -0400 Subject: docs: Introduce Mask Register Over instructions Introduce 4 new instructions that allow a register to be filled to either 1s or 0s. An example of filling 8-bits of an X register: -- mrob x0, #1 -- An example of filling 16-bits of an X register: -- ! Mrow :3 mrow x0, #1 -- ... Signed-off-by: Ian Moffett --- README.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 81f34e1..dfdc493 100644 --- a/README.md +++ b/README.md @@ -94,11 +94,15 @@ and can be accessed through two special instructions. Bitwise logic operations can write to all registers except `v0`-`v7`, `x0` and `pc`. Can read from all registers except `v0`-`v7`. -| Mnemonic | Effect | -| -------------------------------- | ---------------------- | -| `and` dst: r, reg: r, val: r/imm | `dst` = `dst` & `val` | -| `or` dst: r, reg: r, val: r/imm | `dst` = `dst` \| `val` | -| `xor` dst: r, reg: r, val: r/imm | `dst` = `dst` ^ `val` | +| Mnemonic | Effect | +| -------------------------------- | ------------------------------- | +| `and` dst: r, reg: r, val: r/imm | `dst` = `dst` & `val` | +| `or` dst: r, reg: r, val: r/imm | `dst` = `dst` \| `val` | +| `xor` dst: r, reg: r, val: r/imm | `dst` = `dst` ^ `val` | +| `mrob` dst: r: mask [bit]: imm | Fill byte of 'dst' with 'mask' | +| `mrow` dst: r: mask [bit]: imm | Fill word of 'dst' with 'mask' | +| `mrod` dst: r: mask [bit]: imm | Fill dword of 'dst' with 'mask' | +| `mroq` dst: r: mask [bit]: imm | Fill qword of 'dst' with 'mask' | #### Example ``` -- cgit v1.2.3