/* * Copyright (C) 2017-2019 Intel Corporation * * SPDX-License-Identifier: MIT * */ #include "runtime/os_interface/linux/drm_limited_range.h" #include "runtime/os_interface/debug_settings_manager.h" #include "runtime/os_interface/linux/allocator_helper.h" using namespace OCLRT; OCLRT::AllocatorLimitedRange::AllocatorLimitedRange(uint64_t base, uint64_t size) : base(base), size(size), heapAllocator(std::make_unique(base, size)) { } uint64_t OCLRT::AllocatorLimitedRange::allocate(size_t &size) { if (size >= this->size) { return 0llu; } return this->heapAllocator->allocate(size); } void OCLRT::AllocatorLimitedRange::free(uint64_t ptr, size_t size) { this->heapAllocator->free(ptr, size); } uint64_t OCLRT::AllocatorLimitedRange::getBase() const { return base; }