eeric/rv_core/instruction/executor/d/
fld.rs

1use crate::rv_core::instruction::executor::prelude::*;
2
3pub fn fld(I { rd, rs1, imm12 }: I, x: &IntegerRegisters, f: &mut FloatRegisters, mem: &Memory) {
4    let addr = x[rs1].wrapping_add(imm12 as u64);
5    let fp = f64::from_le_bytes(mem.get(addr as usize));
6
7    f[rd] = fp;
8}