From baacedcc858d8d4857282cc7fb1881a11048a5bc Mon Sep 17 00:00:00 2001 From: bd Date: Tue, 22 Apr 2025 20:55:05 -0400 Subject: Remove subfolders --- src/sim/if.cc | 65 ----------------------------------------------------------- 1 file changed, 65 deletions(-) delete mode 100644 src/sim/if.cc (limited to 'src/sim/if.cc') diff --git a/src/sim/if.cc b/src/sim/if.cc deleted file mode 100644 index 054c77c..0000000 --- a/src/sim/if.cc +++ /dev/null @@ -1,65 +0,0 @@ -// Simulator for the RISC-V[ECTOR] mini-ISA -// Copyright (C) 2025 Siddarth Suresh -// Copyright (C) 2025 bdunahu - -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include "if.h" -#include "instrDTO.h" -#include "response.h" -#include "stage.h" - -InstrDTO *IF::advance(Response p) -{ - InstrDTO *r = nullptr; - - this->advance_helper(); - if (this->curr_instr != nullptr && p == WAIT) { - // don't increment PC if the PC was just set by wb - if (this->curr_instr->is_squashed() != 1) - ++this->pc; - r = new InstrDTO(*this->curr_instr); - delete curr_instr; - curr_instr = nullptr; - } - - return r; -} - -std::vector IF::stage_info() { - std::vector info; - if(this->curr_instr){ - info.push_back(this->curr_instr->is_squashed()); - info.push_back(this->curr_instr->get_instr_bits()); - } - return info; -} - -void IF::advance_helper() -{ - Response r; - int i; - signed int bits; - - if (this->curr_instr == nullptr && (this->is_pipelined || this->is_empty)) { - i = this->storage->read_word(this, this->pc, bits); - r = i ? OK : STALLED; - if (r == OK) { - this->curr_instr = new InstrDTO(); - this->curr_instr->set_instr_bits(bits); - this->curr_instr->set_pc(this->pc); - this->is_empty = false; - } - } -} -- cgit v1.2.3