From 241753366789b7a309c4e51d06584c7f5220af8c Mon Sep 17 00:00:00 2001 From: whh8b <whh8b@git.zephyr-software.com> Date: Mon, 14 Dec 2015 05:20:15 +0000 Subject: [PATCH] Add a SplitFreeRange that takes a range --- include/zipr_mem_space.h | 1 + src/memory_space.cpp | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/zipr_mem_space.h b/include/zipr_mem_space.h index 8706d63..b2afae9 100644 --- a/include/zipr_mem_space.h +++ b/include/zipr_mem_space.h @@ -43,6 +43,7 @@ class ZiprMemorySpace_t : public MemorySpace_t // range operatations void SplitFreeRange(RangeAddress_t addr); + void SplitFreeRange(Range_t split_from); void MergeFreeRange(RangeAddress_t addr); RangeSet_t::iterator FindFreeRange(RangeAddress_t addr); Range_t GetFreeRange(int size); diff --git a/src/memory_space.cpp b/src/memory_space.cpp index f8ed446..79807e8 100644 --- a/src/memory_space.cpp +++ b/src/memory_space.cpp @@ -36,6 +36,17 @@ ZiprOptionsNamespace_t *ZiprMemorySpace_t::RegisterOptions(ZiprOptionsNamespace_ return NULL; } +void ZiprMemorySpace_t::SplitFreeRange(Range_t split_from) +{ + RangeAddress_t counter, end; + for (counter = split_from.GetStart(), end = split_from.GetEnd(); + counter!=end; + counter++) + { + SplitFreeRange(counter); + } +} + void ZiprMemorySpace_t::SplitFreeRange(RangeAddress_t addr) { RangeSet_t::iterator it=FindFreeRange(addr); -- GitLab