Lines Matching refs:Subsection
39 // Skip corrupt subsection
61 // [ <uint32: subsection-length> NTBS: vendor-name
79 // subsection-length
95 // Select the attribute subsection.
96 Subsection* subsection = getSubsection(vendor_name);
99 if (subsection == NULL) {
112 // Merge the vendor data in the subsection.
113 if (!subsection->merge(pInput, vendor_data, vendor_data_size))
127 for (llvm::SmallVectorImpl<Subsection*>::const_iterator
146 for (llvm::SmallVectorImpl<Subsection*>::const_iterator
151 // Write out subsection.
161 m_Subsections.push_back(new Subsection(*this, pAttrData));
165 ELFAttribute::Subsection* ELFAttribute::getSubsection(
168 for (llvm::SmallVectorImpl<Subsection*>::const_iterator
173 Subsection* const subsection = *subsec_it;
174 if (subsection->isMyAttribute(pVendorName)) {
175 return subsection;
184 // ELFAttribute::Subsection
186 bool ELFAttribute::Subsection::merge(const Input& pInput,
191 // Read attribute sub-subsection from vendor data.
207 // The tag of sub-subsection is encoded in ULEB128.
229 // The offset from the start of sub-subsection that <attribute> located
274 // Skip sub-subsection tagged with Tag_Section and Tag_Symbol. They are
290 size_t ELFAttribute::Subsection::sizeOutput() const {
295 sizeof(uint32_t) /* length of sub-subsection */ +
299 size_t ELFAttribute::Subsection::emit(char* pBuf) const {
306 // The subsection-length and byte-size field in sub-subsection will be patched
311 // Reserve space for subsection-length.
326 // Reserve space for byte-size for sub-subsection.
333 // Calculate value of subsection-length.
338 // The byte-size in sub-subsection includes Tag_File (1-byte) and the size
350 // Write subsection-length in subsection_length_hole.