<commit_before>#include "generalpurposeregistermachine.h"
#include "functionInterface.h"
#include "../scoreboard/scoreboard.h"

std::array<reg_t, 48> GPR_Machine::m_registers = { 0 };

// we fetch instruction every time
// we decode the instruction
// check and see if it can be put in function unit
// if so then good 
// if not it must stall
// so what is stalling here?
// if stall we cannot go forward (we follow in order instructions)
// therefore if we stall we should execute and writeback everything
// so if we do not stall we pipe

//
void GPR_Machine::processInstruction() {
	//fetch decode
	m_registers[2];
	m_scoreboard.writeBack();
	m_scoreboard.execute();
	m_scoreboard.readOperands();
	m_scoreboard.fetchAssign(m_current_instruction);
}

void GPR_Machine::processRemainingInstructions() {
	m_scoreboard.fetchAssign(m_current_instruction);
	m_scoreboard.readOperands();
	while (!m_scoreboard.getFUFloatAdd().isBufferEmpty() || !m_scoreboard.getFUFloatMult().isBufferEmpty()
		|| !m_scoreboard.getFUInteger().isBufferEmpty() || !m_scoreboard.getFULoadStore().isBufferEmpty()) {
		m_scoreboard.writeBack();
		m_scoreboard.execute();
		m_num_cycles++;
	}
}<commit_msg>Update generalpurposeregistermachine.cpp<commit_after>#include "generalpurposeregistermachine.h"
#include "functionInterface.h"
#include "../scoreboard/scoreboard.h"

std::array<reg_t, 48> GPR_Machine::m_registers = { 0 };

// we fetch instruction every time
// we decode the instruction
// check and see if it can be put in function unit
// if so then good 
// if not it must stall
// so what is stalling here?
// if stall we cannot go forward (we follow in order instructions)
// therefore if we stall we should execute and writeback everything
// so if we do not stall we pipe

//
void GPR_Machine::processInstruction() {
	//fetch decode
	m_scoreboard.writeBack();
	m_scoreboard.execute();
	m_scoreboard.readOperands();
	m_scoreboard.fetchAssign(m_current_instruction);
}

void GPR_Machine::processRemainingInstructions() {
	m_scoreboard.fetchAssign(m_current_instruction);
	m_scoreboard.readOperands();
	while (!m_scoreboard.getFUFloatAdd().isBufferEmpty() || !m_scoreboard.getFUFloatMult().isBufferEmpty()
		|| !m_scoreboard.getFUInteger().isBufferEmpty() || !m_scoreboard.getFULoadStore().isBufferEmpty()) {
		m_scoreboard.writeBack();
		m_scoreboard.execute();
		m_num_cycles++;
	}
}

{'fraction_non_alphanumeric': 0.11978068325601013, 'fraction_numerical': 0.0029523407844791226, 'mean_word_length': 5.445652173913044, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3951330', 'n_tokens_mistral': 781, 'n_tokens_neox': 741, 'n_words': 190}