From ab3d91881540810c09d83416e13c73dabb9a9787 Mon Sep 17 00:00:00 2001 From: Nav Date: Sat, 11 Sep 2021 18:52:39 +0100 Subject: [PATCH] Speciy memory type in target register descriptor --- .../AVR/AVR8/TargetDescription/TargetDescriptionFile.cpp | 1 + src/Targets/TargetMemory.hpp | 8 +++++--- src/Targets/TargetRegister.hpp | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/Targets/Microchip/AVR/AVR8/TargetDescription/TargetDescriptionFile.cpp b/src/Targets/Microchip/AVR/AVR8/TargetDescription/TargetDescriptionFile.cpp index 59afb873..e35de972 100644 --- a/src/Targets/Microchip/AVR/AVR8/TargetDescription/TargetDescriptionFile.cpp +++ b/src/Targets/Microchip/AVR/AVR8/TargetDescription/TargetDescriptionFile.cpp @@ -486,6 +486,7 @@ void TargetDescriptionFile::loadTargetRegisterDescriptors() { auto registerDescriptor = TargetRegisterDescriptor(); registerDescriptor.type = TargetRegisterType::OTHER; + registerDescriptor.memoryType = TargetMemoryType::RAM; registerDescriptor.name = moduleRegisterName; registerDescriptor.groupName = peripheralRegisterGroup.name; registerDescriptor.size = moduleRegister.size; diff --git a/src/Targets/TargetMemory.hpp b/src/Targets/TargetMemory.hpp index acb00e11..cbf050f8 100644 --- a/src/Targets/TargetMemory.hpp +++ b/src/Targets/TargetMemory.hpp @@ -1,15 +1,17 @@ #pragma once +#include #include namespace Bloom::Targets { - using TargetMemoryBuffer = std::vector; - - enum class TargetMemoryType: unsigned int + enum class TargetMemoryType: std::uint8_t { FLASH, RAM, EEPROM, + OTHER, }; + + using TargetMemoryBuffer = std::vector; } diff --git a/src/Targets/TargetRegister.hpp b/src/Targets/TargetRegister.hpp index c11224cf..33eb9449 100644 --- a/src/Targets/TargetRegister.hpp +++ b/src/Targets/TargetRegister.hpp @@ -34,6 +34,7 @@ namespace Bloom::Targets std::optional startAddress; std::uint32_t size = 0; TargetRegisterType type = TargetRegisterType::OTHER; + TargetMemoryType memoryType = TargetMemoryType::OTHER; std::optional name = ""; std::optional groupName;