diff options
Diffstat (limited to 'include/llvm/Target/Mangler.h')
-rw-r--r-- | include/llvm/Target/Mangler.h | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/include/llvm/Target/Mangler.h b/include/llvm/Target/Mangler.h deleted file mode 100644 index eee7bf6..0000000 --- a/include/llvm/Target/Mangler.h +++ /dev/null @@ -1,67 +0,0 @@ -//===-- llvm/Target/Mangler.h - Self-contained name mangler -----*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Unified name mangler for various backends. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_TARGET_MANGLER_H -#define LLVM_TARGET_MANGLER_H - -#include "llvm/ADT/DenseMap.h" - -namespace llvm { - -class GlobalValue; -class MCContext; -template <typename T> class SmallVectorImpl; -class TargetMachine; -class Twine; - -class Mangler { -public: - enum ManglerPrefixTy { - Default, ///< Emit default string before each symbol. - Private, ///< Emit "private" prefix before each symbol. - LinkerPrivate ///< Emit "linker private" prefix before each symbol. - }; - -private: - const TargetMachine *TM; - - /// AnonGlobalIDs - We need to give global values the same name every time - /// they are mangled. This keeps track of the number we give to anonymous - /// ones. - /// - DenseMap<const GlobalValue*, unsigned> AnonGlobalIDs; - - /// NextAnonGlobalID - This simple counter is used to unique value names. - /// - unsigned NextAnonGlobalID; - -public: - Mangler(const TargetMachine *TM) : TM(TM), NextAnonGlobalID(1) {} - - /// getNameWithPrefix - Fill OutName with the name of the appropriate prefix - /// and the specified global variable's name. If the global variable doesn't - /// have a name, this fills in a unique name for the global. - void getNameWithPrefix(SmallVectorImpl<char> &OutName, const GlobalValue *GV, - bool isImplicitlyPrivate, bool UseGlobalPrefix = true); - - /// getNameWithPrefix - Fill OutName with the name of the appropriate prefix - /// and the specified name as the global variable name. GVName must not be - /// empty. - void getNameWithPrefix(SmallVectorImpl<char> &OutName, const Twine &GVName, - ManglerPrefixTy PrefixTy = Mangler::Default, - bool UseGlobalPrefix = true); -}; - -} // End llvm namespace - -#endif // LLVM_TARGET_MANGLER_H |