1/* 2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16// NOLINTNEXTLINE(readability-function-size) 17const char *GetEntrypointInternalName(ark::compiler::RuntimeInterface::EntrypointId id) 18{ 19#ifndef NDEBUG 20 switch (id) { 21% Compiler::entrypoints.each do |entrypoint| 22 case ark::compiler::RuntimeInterface::EntrypointId::<%= entrypoint.enum_name %>: 23 return "<%= entrypoint.llvm_internal_name %>"; 24% end 25 default: 26 ASSERT_DO(false, (std::cerr << "Cannot get entrypoint name by EntrypointId = " << static_cast<int>(id) 27 << std::endl)); 28 UNREACHABLE(); 29 } 30#else 31 switch (id) { 32% Compiler::entrypoints.each_with_index do |entrypoint, index| 33 case ark::compiler::RuntimeInterface::EntrypointId::<%= entrypoint.enum_name %>: 34 return "<%= 'e_' + index.to_s(16) %>"; 35% end 36 default: 37 ASSERT_DO(false, (std::cerr << "Cannot get entrypoint name by EntrypointId = " << static_cast<int>(id) 38 << std::endl)); 39 UNREACHABLE(); 40 } 41#endif 42} 43 44