aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/Memory.cpp
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2018-04-23 16:26:46 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:50:15 +0000
commit99d40951df87790fb884ce1c42d5e2a7a0009ee0 (patch)
tree774e2c6d0849a7fb3f13c7cc4773f7cbfea448fb /src/runtime/Memory.cpp
parentcda0c38373b2f114509392ba16ef04e8c1e0f819 (diff)
downloadComputeLibrary-99d40951df87790fb884ce1c42d5e2a7a0009ee0.tar.gz
COMPMID-1023: Import memory for OpenCL
Change-Id: I201bc00a1261814737e6b6878ecfe9904bae0cc1 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128212 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'src/runtime/Memory.cpp')
-rw-r--r--src/runtime/Memory.cpp45
1 files changed, 25 insertions, 20 deletions
diff --git a/src/runtime/Memory.cpp b/src/runtime/Memory.cpp
index 35d0c824bb..15bbb17675 100644
--- a/src/runtime/Memory.cpp
+++ b/src/runtime/Memory.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2018 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -23,40 +23,45 @@
*/
#include "arm_compute/runtime/Memory.h"
-#include "arm_compute/core/Error.h"
-
-using namespace arm_compute;
+#include "arm_compute/runtime/MemoryRegion.h"
+namespace arm_compute
+{
Memory::Memory()
- : _memory(nullptr), _memory_owned(nullptr)
+ : _region(nullptr), _region_owned(nullptr)
{
+ create_empty_region();
}
-Memory::Memory(std::shared_ptr<uint8_t> memory)
- : _memory(nullptr), _memory_owned(std::move(memory))
+Memory::Memory(std::shared_ptr<IMemoryRegion> memory)
+ : _region(nullptr), _region_owned(std::move(memory))
{
- ARM_COMPUTE_ERROR_ON(_memory_owned.get() == nullptr);
- _memory = _memory_owned.get();
+ if(_region_owned == nullptr)
+ {
+ create_empty_region();
+ }
+ _region = _region_owned.get();
}
-Memory::Memory(uint8_t *memory)
- : _memory(memory), _memory_owned(nullptr)
+Memory::Memory(IMemoryRegion *memory)
+ : _region(memory), _region_owned(nullptr)
{
- ARM_COMPUTE_ERROR_ON(memory == nullptr);
+ _region = memory;
}
-uint8_t *Memory::buffer()
+IMemoryRegion *Memory::region()
{
- return _memory;
+ return _region;
}
-uint8_t *Memory::buffer() const
+IMemoryRegion *Memory::region() const
{
- return _memory;
+ return _region;
}
-uint8_t **Memory::handle()
+void Memory::create_empty_region()
{
- ARM_COMPUTE_ERROR_ON(_memory_owned.get() != nullptr);
- return &_memory;
-} \ No newline at end of file
+ _region_owned = std::make_shared<MemoryRegion>(0);
+ _region = _region_owned.get();
+}
+} // namespace arm_compute