//===-- llvm/Global.h - Class to represent a global variable -----*- C++ -*--=// // // This file contains the declaration of the GlobalVariable class, which // represents a single global variable in the VM. // // Global variables are constant pointers that refer to hunks of space that are // allocated by either the VM, or by the linker in a static compiler. // //===----------------------------------------------------------------------===// #ifndef LLVM_GLOBAL_VARIABLE_H #define LLVM_GLOBAL_VARIABLE_H #include "llvm/Value.h" class Module; class GlobalVariable : public Value { Module *Parent; // The module that contains this method friend class ValueHolder; void setParent(Module *parent) { Parent = parent; } public: GlobalVariable(const Type *Ty, const string &Name = ""); ~GlobalVariable() {} // Specialize setName to handle symbol table majik... virtual void setName(const string &name, SymbolTable *ST = 0); inline Module *getParent() { return Parent; } inline const Module *getParent() const { return Parent; } }; #endif