Lines Matching defs:cie
56 /* Common Information Entry (CIE). */
60 /* Computation Unit for this CIE. */
63 /* Offset into the .debug_frame section where this CIE was found.
64 Used to identify this CIE. */
99 /* The version recorded in the CIE. */
106 /* The CIE table is used to find CIEs during parsing, but then
107 discarded. It maps from the CIE's offset to the CIE. */
121 /* CIE for this FDE. */
122 struct dwarf2_cie *cie;
196 dwarf2_frame_state::dwarf2_frame_state (CORE_ADDR pc_, struct dwarf2_cie *cie)
197 : pc (pc_), data_align (cie->data_alignment_factor),
198 code_align (cie->code_alignment_factor),
199 retaddr_column (cie->return_address_register)
215 CIE initial instructions. If not, default the rule to
295 fs->pc = read_encoded_value (fde->cie->unit, fde->cie->encoding,
296 fde->cie->ptr_size, insn_ptr,
518 /* Don't allow remember/restore between CIE and FDE programs. */
536 struct dwarf2_cie cie;
539 memset (&cie, 0, sizeof cie);
541 cie.data_alignment_factor = -4;
542 cie.code_alignment_factor = 2;
543 fde.cie = &cie;
545 dwarf2_frame_state fs (0, fde.cie);
756 if (fde->cie->version == 1)
759 if (fde->cie->version == 1)
768 if (fde->cie->version == 3
769 && (!startswith (fde->cie->augmentation, "armcc")
770 || strchr (fde->cie->augmentation + 5, '+') == NULL))
800 dwarf2_frame_state fs (pc1, fde->cie);
805 /* First decode all the insns in the CIE. */
806 execute_cfa_program (fde, fde->cie->initial_instructions,
807 fde->cie->end, gdbarch, pc, &fs,
939 struct dwarf2_frame_state fs (pc1, fde->cie);
941 cache->addr_size = fde->cie->addr_size;
946 /* First decode all the insns in the CIE. */
947 execute_cfa_program (fde, fde->cie->initial_instructions,
948 fde->cie->end, gdbarch,
1336 if (fde->cie->signal_frame
1465 augmentation in the associated CIE. The argument of this
1588 /* Find CIE with the given CIE_POINTER in CIE_TABLE. */
1693 /* Defines the type of eh_frames that are expected to be decoded: CIE, FDE
1711 /* Decode the next CIE or FDE, entry_type specifies the expected type.
1767 /* This is a CIE. */
1768 struct dwarf2_cie *cie;
1772 /* Check that a CIE was expected. */
1774 error (_("Found a CIE when not expecting it."));
1776 /* Record the offset into the .debug_frame section of this CIE. */
1783 cie = XOBNEW (&unit->obstack, struct dwarf2_cie);
1784 cie->initial_instructions = NULL;
1785 cie->cie_pointer = cie_pointer;
1789 cie->encoding = DW_EH_PE_absptr;
1793 cie->signal_frame = 0;
1799 cie->version = cie_version;
1803 cie->augmentation = augmentation = (const char *) buf;
1821 if (cie->version >= 4)
1824 cie->addr_size = read_1_byte (unit->abfd, buf);
1826 cie->segment_size = read_1_byte (unit->abfd, buf);
1831 cie->addr_size = gdbarch_dwarf2_addr_size (gdbarch);
1832 cie->segment_size = 0;
1839 cie->ptr_size = gdbarch_ptr_bit (gdbarch) / TARGET_CHAR_BIT;
1841 cie->ptr_size = cie->addr_size;
1846 cie->code_alignment_factor = uleb128;
1851 cie->data_alignment_factor = sleb128;
1855 cie->return_address_register = read_1_byte (unit->abfd, buf);
1863 cie->return_address_register = uleb128;
1866 cie->return_address_register
1868 cie->return_address_register,
1871 cie->saw_z_augmentation = (*augmentation == 'z');
1872 if (cie->saw_z_augmentation)
1879 cie->initial_instructions = buf + uleb_length;
1896 cie->encoding = *buf++;
1900 /* "P" indicates a personality routine in the CIE augmentation. */
1905 read_encoded_value (unit, encoding, cie->ptr_size,
1918 cie->signal_frame = 1;
1926 if (cie->initial_instructions)
1927 buf = cie->initial_instructions;
1932 cie->initial_instructions = buf;
1933 cie->end = end;
1934 cie->unit = unit;
1936 cie_table[cie->cie_pointer] = cie;
1947 /* In an .eh_frame section, the CIE pointer is the delta between the
1948 address within the FDE where the CIE pointer is stored and the
1949 address of the CIE. Convert it to an offset into the .eh_frame
1962 fde->cie = find_cie (cie_table, cie_pointer);
1963 if (fde->cie == NULL)
1969 fde->cie = find_cie (cie_table, cie_pointer);
1972 gdb_assert (fde->cie != NULL);
1975 = read_encoded_value (unit, fde->cie->encoding, fde->cie->ptr_size,
1982 = read_encoded_value (unit, fde->cie->encoding & 0x0f,
1983 fde->cie->ptr_size, buf, &bytes_read,
1989 /* A 'z' augmentation in the CIE implies the presence of an
1993 if (fde->cie->saw_z_augmentation)
2016 /* Read a CIE or FDE in BUF and decode it. Entry_type specifies whether we
2017 expect an FDE or a CIE. */
2047 sized such that the FDE length and CIE fields happen to be
2060 of compressing duplicate CIE information, that it can rewrite