Home | History | Annotate | Download | only in LD

Lines Matching refs:ResolveInfo

1 //===- ResolveInfo.cpp ----------------------------------------------------===//
9 #include <mcld/LD/ResolveInfo.h>
15 /// g_NullResolveInfo - a pointer to Null ResolveInfo.
16 static ResolveInfo* g_NullResolveInfo = NULL;
19 // ResolveInfo
21 ResolveInfo::ResolveInfo()
26 ResolveInfo::~ResolveInfo()
30 void ResolveInfo::override(const ResolveInfo& pFrom)
37 void ResolveInfo::overrideAttributes(const ResolveInfo& pFrom)
45 void ResolveInfo::overrideVisibility(const ResolveInfo& pFrom)
72 void ResolveInfo::setRegular()
77 void ResolveInfo::setDynamic()
82 void ResolveInfo::setSource(bool pIsDyn)
90 void ResolveInfo::setType(uint32_t pType)
96 void ResolveInfo::setDesc(uint32_t pDesc)
102 void ResolveInfo::setBinding(uint32_t pBinding)
111 void ResolveInfo::setReserved(uint32_t pReserved)
117 void ResolveInfo::setOther(uint32_t pOther)
119 setVisibility(static_cast<ResolveInfo::Visibility>(pOther & 0x3));
122 void ResolveInfo::setVisibility(ResolveInfo::Visibility pVisibility)
128 void ResolveInfo::setIsSymbol(bool pIsSymbol)
136 bool ResolveInfo::isNull() const
141 bool ResolveInfo::isDyn() const
146 bool ResolveInfo::isUndef() const
151 bool ResolveInfo::isDefine() const
156 bool ResolveInfo::isCommon() const
161 bool ResolveInfo::isIndirect() const
167 bool ResolveInfo::isGlobal() const
173 bool ResolveInfo::isWeak() const
179 bool ResolveInfo::isLocal() const
185 bool ResolveInfo::isAbsolute() const
190 bool ResolveInfo::isSymbol() const
195 bool ResolveInfo::isString() const
200 uint32_t ResolveInfo::type() const
205 uint32_t ResolveInfo::desc() const
210 uint32_t ResolveInfo::binding() const
214 return ResolveInfo::Absolute;
216 return ResolveInfo::Local;
221 uint32_t ResolveInfo::reserved() const
226 ResolveInfo::Visibility ResolveInfo::visibility() const
228 return static_cast<ResolveInfo::Visibility>((m_BitField & VISIBILITY_MASK) >> VISIBILITY_OFFSET);
231 bool ResolveInfo::compare(const ResolveInfo::key_type& pKey)
240 // ResolveInfo Factory Methods
242 ResolveInfo* ResolveInfo::Create(const ResolveInfo::key_type& pKey)
244 ResolveInfo* result = static_cast<ResolveInfo*>(
245 malloc(sizeof(ResolveInfo)+pKey.size()+1));
249 new (result) ResolveInfo();
252 result->m_BitField &= ~ResolveInfo::RESOLVE_MASK;
253 result->m_BitField |= (pKey.size() << ResolveInfo::NAME_LENGTH_OFFSET);
257 void ResolveInfo::Destroy(ResolveInfo*& pInfo)
263 pInfo->~ResolveInfo();
270 ResolveInfo* ResolveInfo::Null()
273 g_NullResolveInfo = static_cast<ResolveInfo*>(
274 malloc(sizeof(ResolveInfo) + 1));
275 new (g_NullResolveInfo) ResolveInfo();