Lines Matching defs:Cie
187 // the offset to the CIE.
209 // encoding, from the CIE. Round up the bytes to ADDRALIGN if
249 // A FDE plus some info from a CIE to allow later writing of the FDE.
264 // This class holds a CIE.
266 class Cie
269 Cie(Relobj* object, unsigned int shndx, section_offset_type input_offset,
281 ~Cie();
283 // We permit copying a CIE when there are no FDEs. This is
285 Cie(const Cie& cie)
286 : object_(cie.object_),
287 shndx_(cie.shndx_),
288 input_offset_(cie.input_offset_),
289 fde_encoding_(cie.fde_encoding_),
290 personality_name_(cie.personality_name_),
292 contents_(cie.contents_)
293 { gold_assert(cie.fdes_.empty()); }
295 // Add an FDE associated with this CIE.
305 // Set the output offset of this CIE to OUTPUT_OFFSET. It will be
313 // Write the CIE to OVIEW starting at OFFSET. Round up the bytes to
325 friend bool operator<(const Cie&, const Cie&);
326 friend bool operator==(const Cie&, const Cie&);
330 Cie& operator=(const Cie&);
332 // The object in which this CIE was first seen. This will be NULL
333 // for a linker generated CIE.
335 // Input section index for this CIE. This will be 0 for a linker
336 // generated CIE.
338 // Offset within the input section for this CIE. This will be 0 for
339 // a linker generated CIE.
348 // CIE data.
352 extern bool operator<(const Cie&, const Cie&);
353 extern bool operator==(const Cie&, const Cie&);
393 // Add a CIE and an FDE for a PLT section, to permit unwinding
431 // The comparison routine for the CIE map.
435 operator()(const Cie* cie1, const Cie* cie2) const
440 typedef std::set<Cie*, Cie_less> Cie_offsets;
443 typedef std::vector<Cie*> Unmergeable_cie_offsets;
447 typedef std::map<uint64_t, Cie*> Offsets_to_cie;
449 // A list of CIEs, and a bool indicating whether the CIE is
451 typedef std::vector<std::pair<Cie*, bool> > New_cies;
472 // Read a CIE.