Lines Matching refs:cie
230 static signed fde_pointer_type(const u32 *cie);
283 const u32 *cie = cie_for_fde(fde, table); in init_unwind_hdr() local
286 if (cie == ¬_fde) in init_unwind_hdr()
288 if (cie == NULL || cie == &bad_cie) in init_unwind_hdr()
290 ptrType = fde_pointer_type(cie); in init_unwind_hdr()
331 const u32 *cie = __cie_for_fde(fde); in init_unwind_hdr() local
339 fde_pointer_type(cie)); in init_unwind_hdr()
504 const u32 *cie; in __cie_for_fde() local
506 cie = fde + 1 - fde[1] / sizeof(*fde); in __cie_for_fde()
508 return cie; in __cie_for_fde()
513 const u32 *cie; in cie_for_fde() local
525 cie = __cie_for_fde(fde); in cie_for_fde()
527 if (*cie <= sizeof(*cie) + 4 || *cie >= fde[1] - sizeof(*fde) in cie_for_fde()
528 || (*cie & (sizeof(*cie) - 1)) in cie_for_fde()
529 || (cie[1] != CIE_ID)) in cie_for_fde()
531 return cie; in cie_for_fde()
606 static signed fde_pointer_type(const u32 *cie) in fde_pointer_type() argument
608 const u8 *ptr = (const u8 *)(cie + 2); in fde_pointer_type()
613 const u8 *end = (const u8 *)(cie + 1) + *cie; in fde_pointer_type()
900 const u32 *fde = NULL, *cie = NULL; in arc_unwind() local
989 cie = cie_for_fde(fde, table); in arc_unwind()
991 if (cie != NULL in arc_unwind()
992 && cie != &bad_cie in arc_unwind()
993 && cie != ¬_fde in arc_unwind()
994 && (ptrType = fde_pointer_type(cie)) >= 0 in arc_unwind()
1008 cie = NULL; in arc_unwind()
1012 cie = NULL; in arc_unwind()
1016 if (cie != NULL) { in arc_unwind()
1019 ptr = (const u8 *)(cie + 2); in arc_unwind()
1020 end = (const u8 *)(cie + 1) + *cie; in arc_unwind()
1043 cie = NULL; in arc_unwind()
1047 if (cie != NULL) { in arc_unwind()
1053 cie = NULL; in arc_unwind()
1064 if (((const char *)(cie + 2))[1] == 'z') { in arc_unwind()
1073 cie = NULL; in arc_unwind()
1076 if (cie != NULL) { in arc_unwind()
1082 if (((const char *)(cie + 2))[1] == 'z') { in arc_unwind()
1089 if (cie == NULL || fde == NULL) { in arc_unwind()