1 // 2 // Copyright © 2017 Arm Ltd. All rights reserved. 3 // SPDX-License-Identifier: MIT 4 // 5 6 #include "ClBackend.hpp" 7 8 #include <armnn/BackendRegistry.hpp> 9 10 namespace 11 { 12 13 using namespace armnn; 14 15 static BackendRegistry::StaticRegistryInitializer g_RegisterHelper 16 { 17 BackendRegistryInstance(), 18 ClBackend::GetIdStatic(), 19 []() __anonb877c52e0202() 20 { 21 // Check if we have a CustomMemoryAllocator associated with the backend 22 // and if so register it with the backend. 23 auto customAllocators = BackendRegistryInstance().GetAllocators(); 24 auto allocatorIterator = customAllocators.find(ClBackend::GetIdStatic()); 25 if (allocatorIterator != customAllocators.end()) 26 { 27 return IBackendInternalUniquePtr(new ClBackend(allocatorIterator->second)); 28 } 29 return IBackendInternalUniquePtr(new ClBackend); 30 } 31 }; 32 33 } // Anonymous namespace 34