struct ValueMapConfig

Declaration

template <typename KeyT, typename MutexT = sys::Mutex>
struct ValueMapConfig { /* full declaration omitted */ };

Description

This class defines the default behavior for configurable aspects of ValueMap < >. User Configs should inherit from this class to be as compatible as possible with future versions of ValueMap.

Declared at: llvm/include/llvm/IR/ValueMap.h:57

Templates

KeyT
MutexT = sys::Mutex

Method Overview

  • public template <typename ExtraDataT>static llvm::ValueMapConfig::mutex_type * getMutex(const ExtraDataT &)
  • public template <typename ExtraDataT>static void onDelete(const ExtraDataT &, KeyT)
  • public template <typename ExtraDataT>static void onRAUW(const ExtraDataT &, KeyT, KeyT)

Methods

template <typename ExtraDataT>
static llvm::ValueMapConfig::mutex_type* getMutex(
    const ExtraDataT&)

Description

Returns a mutex that should be acquired around any changes to the map. This is only acquired from the CallbackVH (and held around calls to onRAUW and onDelete) and not inside other ValueMap methods. NULL means that no mutex is necessary.

Declared at: llvm/include/llvm/IR/ValueMap.h:80

Templates

ExtraDataT

Parameters

const ExtraDataT&

template <typename ExtraDataT>
static void onDelete(const ExtraDataT&, KeyT)

Declared at: llvm/include/llvm/IR/ValueMap.h:73

Templates

ExtraDataT

Parameters

const ExtraDataT&
KeyT

template <typename ExtraDataT>
static void onRAUW(const ExtraDataT&, KeyT, KeyT)

Declared at: llvm/include/llvm/IR/ValueMap.h:71

Templates

ExtraDataT

Parameters

const ExtraDataT&
KeyT
KeyT