summaryrefslogtreecommitdiff
path: root/inc
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-05-11 13:08:16 -0400
committerbd <bdunahu@operationnull.com>2025-05-11 13:08:16 -0400
commit79a68cabb033530871a1dab259149480584b2586 (patch)
tree0d59680dba627eec789984ef265fc20f8e6b88c8 /inc
parent5326509d842c038a2d4f7dcf11fcadf960e437dd (diff)
Add I_VECT field type for SRDL, SRDS, with two vector reg 1 general
Diffstat (limited to 'inc')
-rw-r--r--inc/ex.h2
-rw-r--r--inc/instr.h1
-rw-r--r--inc/instrDTO.h4
3 files changed, 4 insertions, 3 deletions
diff --git a/inc/ex.h b/inc/ex.h
index 30a6639..19b35d4 100644
--- a/inc/ex.h
+++ b/inc/ex.h
@@ -96,7 +96,7 @@ class EX : public Stage
* @param the mnemonic
* @param the vector length register
*/
- void handle_i_vector_operations(signed int &s1, signed int s2, Mnemonic m);
+ void handle_s_vector_operations(signed int &s1, signed int s2, Mnemonic m);
/**
* Wrapper for division functions, which detects HALT instructinos (division
* by 0).
diff --git a/inc/instr.h b/inc/instr.h
index caceb39..a083699 100644
--- a/inc/instr.h
+++ b/inc/instr.h
@@ -64,6 +64,7 @@ enum Mnemonic {
enum FieldType {
SI_INT,
R_VECT,
+ S_VECT,
};
namespace instr
diff --git a/inc/instrDTO.h b/inc/instrDTO.h
index ccc6ed9..5d6a4eb 100644
--- a/inc/instrDTO.h
+++ b/inc/instrDTO.h
@@ -35,7 +35,7 @@ struct V_TYPE {
};
struct VI_TYPE {
- signed int slot_one;
+ std::array<signed int, V_R_LIMIT> slot_one;
signed int slot_two;
std::array<signed int, V_R_LIMIT> slot_three;
};
@@ -68,7 +68,7 @@ struct InstrDTO {
union {
struct U_INT_TYPE integer;
struct V_TYPE vector;
- struct VI_TYPE i_vector;
+ struct VI_TYPE s_vector;
} operands;
};