summaryrefslogtreecommitdiffhomepage
path: root/C++Kit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2023-12-31 13:39:32 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2023-12-31 13:40:49 +0100
commitb85499e94ffff847eedeb35eafc4390f5590007f (patch)
tree1110dcaeecfa53f40bcc3f3202f26cc6d196b6ad /C++Kit
parentca6a82f601c0d1a7842c639d392bea92552cae38 (diff)
masm: add support for 'sta' or 'store in address'
masm: improved assembler correctness, throwing fatal error when n is > KAsmRegisterLimit, e.g: r77. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'C++Kit')
-rw-r--r--C++Kit/AsmKit/Arch/NewCPU.hpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/C++Kit/AsmKit/Arch/NewCPU.hpp b/C++Kit/AsmKit/Arch/NewCPU.hpp
index 425cd22..d69b946 100644
--- a/C++Kit/AsmKit/Arch/NewCPU.hpp
+++ b/C++Kit/AsmKit/Arch/NewCPU.hpp
@@ -53,6 +53,7 @@ inline std::vector<NCOpcode> kOpcodesStd = {
kAsmOpcodeDecl("stw", 0b0100011, 0b100, kAsmImmediate)
kAsmOpcodeDecl("ldw", 0b0000011, 0b100, kAsmImmediate)
kAsmOpcodeDecl("lda", 0b0000011, 0b101, kAsmImmediate)
+ kAsmOpcodeDecl("sta", 0b0000011, 0b001, kAsmImmediate)
kAsmOpcodeDecl("add", 0b0101011, 0b100, kAsmImmediate)
kAsmOpcodeDecl("dec", 0b0101011, 0b101, kAsmImmediate)
kAsmOpcodeDecl("scall", 0b1110011, 0b00, kAsmSyscall)
@@ -77,7 +78,7 @@ inline std::vector<NCOpcode> kOpcodesStd = {
// SYSTEM CALL ADDRESSING
-// | OPCODE | FUNCT3 | FUNCT7 | OFF |
+// | OPCODE | FUNCT3 | FUNCT7 | STACK POINTER.
// IMMEDIATE ADDRESSING