Created new register type for port registers
This commit is contained in:
@@ -87,8 +87,10 @@ TargetRegistersPaneWidget::TargetRegistersPaneWidget(
|
||||
auto registerDescriptorsByGroupName = std::map<std::string, std::set<TargetRegisterDescriptor>>();
|
||||
for (const auto& registerDescriptor : registerDescriptors.at(TargetRegisterType::OTHER)) {
|
||||
registerDescriptorsByGroupName[registerDescriptor.groupName.value_or("other")].insert(registerDescriptor);
|
||||
auto groupName = registerDescriptor.groupName.value_or("other");
|
||||
}
|
||||
|
||||
for (const auto& registerDescriptor : registerDescriptors.at(TargetRegisterType::PORT_REGISTER)) {
|
||||
registerDescriptorsByGroupName[registerDescriptor.groupName.value_or("other")].insert(registerDescriptor);
|
||||
}
|
||||
|
||||
for (const auto& [groupName, registerDescriptors] : registerDescriptorsByGroupName) {
|
||||
|
||||
@@ -485,7 +485,8 @@ void TargetDescriptionFile::loadTargetRegisterDescriptors() {
|
||||
}
|
||||
|
||||
auto registerDescriptor = TargetRegisterDescriptor();
|
||||
registerDescriptor.type = TargetRegisterType::OTHER;
|
||||
registerDescriptor.type = moduleName == "port"
|
||||
? TargetRegisterType::PORT_REGISTER : TargetRegisterType::OTHER;
|
||||
registerDescriptor.memoryType = TargetMemoryType::RAM;
|
||||
registerDescriptor.name = moduleRegisterName;
|
||||
registerDescriptor.groupName = peripheralRegisterGroup.name;
|
||||
|
||||
@@ -18,6 +18,7 @@ namespace Bloom::Targets
|
||||
PROGRAM_COUNTER,
|
||||
STACK_POINTER,
|
||||
STATUS_REGISTER,
|
||||
PORT_REGISTER,
|
||||
OTHER,
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user