(&mut self, cpu: &mut Cpu)
| 32 | |
| 33 | impl icicle_vm::cpu::RegHandler for XpsrHandler { |
| 34 | fn read(&mut self, cpu: &mut Cpu) { |
| 35 | let mut xpsr = cpu.read_var::<u32>(self.xpsr) & !crate::arm::XPSR_NZCV_MASK; |
| 36 | xpsr |= (cpu.read_var::<u8>(self.ng) as u32) << 31; |
| 37 | xpsr |= (cpu.read_var::<u8>(self.zr) as u32) << 30; |
| 38 | xpsr |= (cpu.read_var::<u8>(self.cy) as u32) << 29; |
| 39 | xpsr |= (cpu.read_var::<u8>(self.ov) as u32) << 28; |
| 40 | cpu.write_var(self.xpsr, xpsr); |
| 41 | } |
| 42 | |
| 43 | fn write(&mut self, cpu: &mut Cpu) { |
| 44 | let xpsr = cpu.read_var::<u32>(self.xpsr) & crate::arm::XPSR_NZCV_MASK; |
no outgoing calls
no test coverage detected