13#ifndef LLVM_IR_VALUESYMBOLTABLE_H
14#define LLVM_IR_VALUESYMBOLTABLE_H
79 if (MaxNameSize > -1 && Name.size() > (
unsigned)MaxNameSize)
80 Name = Name.substr(0, std::max(1u, (
unsigned)MaxNameSize));
82 return vmap.lookup(Name);
87 inline bool empty()
const {
return vmap.empty(); }
123 void reinsertValue(
Value *V);
This file defines the StringMap class.
This class represents an incoming formal argument to a Function.
LLVM Basic Block Representation.
SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better...
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringMapIterBase< Value *, false > iterator
StringMapIterBase< Value *, true > const_iterator
StringRef - Represent a constant reference to a string, i.e.
ValueSymbolTable(int MaxNameSize=-1)
LLVM_ABI void dump() const
This function can be used from the debugger to display the content of the symbol table while debuggin...
const_iterator begin() const
Get a const_iterator that from the beginning of the symbol table.
Value * lookup(StringRef Name) const
This method finds the value with the given Name in the the symbol table.
ValueMap::const_iterator const_iterator
A const_iterator over a ValueMap.
const_iterator end() const
Get a const_iterator to the end of the symbol table.
iterator end()
Get an iterator to the end of the symbol table.
LLVM_ABI ~ValueSymbolTable()
StringMap< Value * > ValueMap
A mapping of names to values.
unsigned size() const
The number of name/type pairs is returned.
iterator begin()
Get an iterator that from the beginning of the symbol table.
ValueMap::iterator iterator
An iterator over a ValueMap.
LLVM Value Representation.
This is an optimization pass for GlobalISel generic memory operations.
StringMapEntry< Value * > ValueName
Option to add extra bits to the ilist_iterator.
Option to add a pointer to this list's owner in every node.