Finished basic Assembler and Linker framework.

This commit is contained in:
2025-07-20 20:45:10 +08:00
parent bfec019c77
commit b164fc1798
9 changed files with 166 additions and 8 deletions

View File

@@ -0,0 +1,21 @@
using SVM.Core;
using System.Collections.Generic;
namespace SVM.Assembler.Core
{
public class ISADefinition
{
public Dictionary<string, InstructionDefinition> InstructionDefinitions = new Dictionary<string, InstructionDefinition>();
public Dictionary<PrimaryInstruction, LinkerFunction> LinkerFunctions = new Dictionary<PrimaryInstruction, LinkerFunction>();
public void Init()
{
foreach (var item in InstructionDefinitions)
{
if (!LinkerFunctions.TryAdd(item.Value.PrimaryInstruction, item.Value.linkerFunction))
{
LinkerFunctions[item.Value.PrimaryInstruction] = item.Value.linkerFunction;
}
}
}
}
}