Writes exactly 2 bytes at the effective address `base + offset`.
(&mut self, base: u64, offset: u64, bytes: [u8; 2])
| 220 | |
| 221 | /// Writes exactly 2 bytes at the effective address `base + offset`. |
| 222 | fn write_16(&mut self, base: u64, offset: u64, bytes: [u8; 2]) -> core::result::Result<(), crate::Trap> { |
| 223 | let addr = checked_effective_addr::<2>(self.len(), base, offset)?; |
| 224 | self.write_all(addr, &bytes).ok_or_else(|| { |
| 225 | cold_path(); |
| 226 | memory_oob(addr, 2, self.len()) |
| 227 | }) |
| 228 | } |
| 229 | |
| 230 | /// Writes exactly 4 bytes at the effective address `base + offset`. |
| 231 | fn write_32(&mut self, base: u64, offset: u64, bytes: [u8; 4]) -> core::result::Result<(), crate::Trap> { |