From 3ae03b8981615ad74dcb6a48d376c344fec9ffd0 Mon Sep 17 00:00:00 2001 From: Nav Date: Sun, 19 Jan 2025 01:01:41 +0000 Subject: [PATCH] Corrected address range in address space descriptor --- src/Targets/TargetAddressSpaceDescriptor.hpp | 2 +- src/Targets/TargetDescription/TargetDescriptionFile.cpp | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/Targets/TargetAddressSpaceDescriptor.hpp b/src/Targets/TargetAddressSpaceDescriptor.hpp index 01ee4c06..29e1a189 100644 --- a/src/Targets/TargetAddressSpaceDescriptor.hpp +++ b/src/Targets/TargetAddressSpaceDescriptor.hpp @@ -41,7 +41,7 @@ namespace Targets const TargetMemoryAddressRange& addressRange, TargetMemoryEndianness endianness, std::map&& segmentDescriptorsByKey, - std::uint8_t unitSize = 1 + std::uint8_t unitSize ); TargetAddressSpaceDescriptor(const TargetAddressSpaceDescriptor& other) = delete; diff --git a/src/Targets/TargetDescription/TargetDescriptionFile.cpp b/src/Targets/TargetDescription/TargetDescriptionFile.cpp index 8b114000..3ba8f39e 100644 --- a/src/Targets/TargetDescription/TargetDescriptionFile.cpp +++ b/src/Targets/TargetDescription/TargetDescriptionFile.cpp @@ -963,10 +963,11 @@ namespace Targets::TargetDescription addressSpace.key, TargetMemoryAddressRange{ addressSpace.startAddress, - addressSpace.startAddress + addressSpace.size - 1 + addressSpace.startAddress + (addressSpace.size / addressSpace.unitSize) - 1 }, addressSpace.endianness.value_or(TargetMemoryEndianness::LITTLE), - {} + {}, + addressSpace.unitSize }; for (const auto& [key, memorySegment] : addressSpace.memorySegmentsByKey) {