Mercurial > hg > CbC > CbC_llvm
view lld/Common/Memory.cpp @ 259:011663b4a808
remove duplicate setjmp in return continuation
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 12 Oct 2023 15:52:37 +0900 |
parents | c4bab56944e8 |
children |
line wrap: on
line source
//===- Memory.cpp ---------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #include "lld/Common/Memory.h" #include "lld/Common/CommonLinkerContext.h" using namespace llvm; using namespace lld; SpecificAllocBase * lld::SpecificAllocBase::getOrCreate(void *tag, size_t size, size_t align, SpecificAllocBase *(&creator)(void *)) { auto &instances = context().instances; auto &instance = instances[tag]; if (instance == nullptr) { void *storage = context().bAlloc.Allocate(size, align); instance = creator(storage); } return instance; }