From ee4af301dfd61b21e8aa3ce04e7a77b716d65f24 Mon Sep 17 00:00:00 2001 From: Siddarth-Suresh <65844402+Siddarth-Suresh@users.noreply.github.com> Date: Sun, 27 Apr 2025 00:04:53 -0400 Subject: LOADV Changes --- src/id.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/id.cc') diff --git a/src/id.cc b/src/id.cc index d51c70c..28a48a0 100644 --- a/src/id.cc +++ b/src/id.cc @@ -227,11 +227,15 @@ void ID::decode_I_type(signed int &s1) this->status = (r1 == OK && r2 == OK && r3 == OK) ? OK : STALLED; return; case LOADV: + this->curr_instr->slot_C = s3; s2 = GET_LS_BITS(s1, s0b); s1 = GET_MID_BITS(s1, s0b, s1b); - r1 = this->read_vec_guard(s1, this->curr_instr->operands.vector.slot_one); + // base address + r1 = this->read_guard(s1); + this->curr_instr->slot_B = s1; r3 = this->set_vlen(); if (r1 == OK && r3 == OK) + // vector destination this->write_vec_guard(s2, this->curr_instr->operands.vector.slot_two); this->status = (r1 == OK && r3 == OK) ? OK : STALLED; return; -- cgit v1.2.3