Object: Add isSymbolWeak.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142316 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Michael J. Spencer
2011-10-17 23:54:22 +00:00
parent 0e752cb4b4
commit c38c36a8c4
7 changed files with 46 additions and 1 deletions

View File

@ -121,6 +121,9 @@ public:
/// such as library functions
error_code isGlobal(bool &Result) const;
/// Returns true for weak symbols.
error_code isWeak(bool &Result) const;
DataRefImpl getRawDataRefImpl() const;
};
typedef content_iterator<SymbolRef> symbol_iterator;
@ -234,7 +237,7 @@ protected:
virtual error_code getSymbolNMTypeChar(DataRefImpl Symb, char &Res) const = 0;
virtual error_code isSymbolInternal(DataRefImpl Symb, bool &Res) const = 0;
virtual error_code isSymbolGlobal(DataRefImpl Symb, bool &Res) const = 0;
virtual error_code isSymbolWeak(DataRefImpl Symb, bool &Res) const = 0;
// Same as above for SectionRef.
friend class SectionRef;
@ -345,6 +348,10 @@ inline error_code SymbolRef::isGlobal(bool &Result) const {
return OwningObject->isSymbolGlobal(SymbolPimpl, Result);
}
inline error_code SymbolRef::isWeak(bool &Result) const {
return OwningObject->isSymbolWeak(SymbolPimpl, Result);
}
inline error_code SymbolRef::getType(SymbolRef::Type &Result) const {
return OwningObject->getSymbolType(SymbolPimpl, Result);
}