LLVM 20.0.0git
CoreContainers.h
Go to the documentation of this file.
1//===---- CoreContainers.h - Symbol Containers for Core APIs ----*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// Symbol container types for core ORC APIs.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_EXECUTIONENGINE_ORC_CORECONTAINERS_H
14#define LLVM_EXECUTIONENGINE_ORC_CORECONTAINERS_H
15
16#include "llvm/ADT/DenseMap.h"
17#include "llvm/ADT/DenseSet.h"
21
22#include <vector>
23
24namespace llvm::orc {
25
26class JITDylib;
27
28/// A set of symbol names (represented by SymbolStringPtrs for
29// efficiency).
31
32/// A vector of symbol names.
33using SymbolNameVector = std::vector<SymbolStringPtr>;
34
35/// A map from symbol names (as SymbolStringPtrs) to JITSymbols
36/// (address/flags pairs).
38
39/// A map from symbol names (as SymbolStringPtrs) to JITSymbolFlags.
41
42/// A map from JITDylibs to sets of symbols.
44
45} // End namespace llvm::orc
46
47#endif // LLVM_EXECUTIONENGINE_ORC_CORECONTAINERS_H
This file defines the DenseMap class.
This file defines the DenseSet and SmallDenseSet classes.
std::vector< SymbolStringPtr > SymbolNameVector
A vector of symbol names.