Lines Matching refs:end

172 				  const void *end, signed ptrType);
198 const u8 *end = header_start + header_size; in init_unwind_table() local
210 || (void *)read_pointer(&ptr, end, header_start[1]) != table_start in init_unwind_table()
212 || read_pointer(&ptr, end, header_start[2]) <= 0 in init_unwind_table()
463 static uleb128_t get_uleb128(const u8 **pcur, const u8 *end) in get_uleb128() argument
469 for (shift = 0, value = 0; cur < end; shift += 7) { in get_uleb128()
472 cur = end + 1; in get_uleb128()
484 static sleb128_t get_sleb128(const u8 **pcur, const u8 *end) in get_sleb128() argument
490 for (shift = 0, value = 0; cur < end; shift += 7) { in get_sleb128()
493 cur = end + 1; in get_sleb128()
531 static unsigned long read_pointer(const u8 **pLoc, const void *end, in read_pointer() argument
549 if (end < (const void *)(ptr.p16u + 1)) in read_pointer()
558 if (end < (const void *)(ptr.p32u + 1)) in read_pointer()
571 if (end < (const void *)(ptr.pul + 1)) in read_pointer()
577 value = ptrType & DW_EH_PE_signed ? get_sleb128(&ptr.p8, end) in read_pointer()
578 : get_uleb128(&ptr.p8, end); in read_pointer()
579 if ((const void *)ptr.p8 > end) in read_pointer()
609 const u8 *end = (const u8 *)(cie + 1) + *cie; in fde_pointer_type() local
618 ptr = memchr(aug, 0, end - ptr); in fde_pointer_type()
623 get_uleb128(&ptr, end); /* skip code alignment */ in fde_pointer_type()
624 get_sleb128(&ptr, end); /* skip data alignment */ in fde_pointer_type()
626 version <= 1 ? (void) ++ptr : (void)get_uleb128(&ptr, end); in fde_pointer_type()
627 len = get_uleb128(&ptr, end); /* augmentation length */ in fde_pointer_type()
629 if (ptr + len < ptr || ptr + len > end) in fde_pointer_type()
632 end = ptr + len; in fde_pointer_type()
634 if (ptr >= end) in fde_pointer_type()
643 if (!read_pointer(&ptr, end, ptrType) in fde_pointer_type()
644 || ptr > end) in fde_pointer_type()
698 static int processCFI(const u8 *start, const u8 *end, unsigned long targetLoc, in processCFI() argument
717 for (ptr.p8 = start; result && ptr.p8 < end;) { in processCFI()
729 state->loc = read_pointer(&ptr.p8, end, in processCFI()
737 result = ptr.p8 < end in processCFI()
744 result = ptr.p8 <= end + 2 in processCFI()
750 result = ptr.p8 <= end + 4 in processCFI()
754 value = get_uleb128(&ptr.p8, end); in processCFI()
757 get_uleb128(&ptr.p8, end), state); in processCFI()
760 value = get_uleb128(&ptr.p8, end); in processCFI()
762 get_uleb128(&ptr.p8, end), state); in processCFI()
765 value = get_uleb128(&ptr.p8, end); in processCFI()
767 get_sleb128(&ptr.p8, end), state); in processCFI()
770 value = get_uleb128(&ptr.p8, end); in processCFI()
772 get_sleb128(&ptr.p8, end), state); in processCFI()
780 set_rule(get_uleb128(&ptr.p8, end), Nowhere, 0, in processCFI()
785 value = get_uleb128(&ptr.p8, end); in processCFI()
788 get_uleb128(&ptr.p8, end), state); in processCFI()
814 processCFI(start, end, 0, ptrType, in processCFI()
822 state->cfa.reg = get_uleb128(&ptr.p8, end); in processCFI()
826 state->cfa.offs = get_uleb128(&ptr.p8, end); in processCFI()
831 state->cfa.reg = get_uleb128(&ptr.p8, end); in processCFI()
834 state->cfa.offs = get_sleb128(&ptr.p8, end) in processCFI()
839 state->cfa.reg = get_uleb128(&ptr.p8, end); in processCFI()
845 get_uleb128(&ptr.p8, end); in processCFI()
848 value = get_uleb128(&ptr.p8, end); in processCFI()
852 end), in processCFI()
869 set_rule(value, Memory, get_uleb128(&ptr.p8, end), in processCFI()
878 if (ptr.p8 > end) in processCFI()
884 return result && ptr.p8 == end && (targetLoc == 0 || ( in processCFI()
897 const u8 *ptr = NULL, *end = NULL; in arc_unwind() local
952 end = hdr + table->hdrsz; in arc_unwind()
953 if (tableSize && read_pointer(&ptr, end, hdr[1]) in arc_unwind()
955 && (i = read_pointer(&ptr, end, hdr[2])) > 0 in arc_unwind()
956 && i == (end - ptr) / (2 * tableSize) in arc_unwind()
957 && !((end - ptr) % (2 * tableSize))) { in arc_unwind()
1016 end = (const u8 *)(cie + 1) + *cie; in arc_unwind()
1021 while (++ptr < end && *ptr) { in arc_unwind()
1038 if (ptr >= end || *ptr) in arc_unwind()
1045 state.codeAlign = get_uleb128(&ptr, end); in arc_unwind()
1047 state.dataAlign = get_sleb128(&ptr, end); in arc_unwind()
1048 if (state.codeAlign == 0 || state.dataAlign == 0 || ptr >= end) in arc_unwind()
1053 end); in arc_unwind()
1061 uleb128_t augSize = get_uleb128(&ptr, end); in arc_unwind()
1065 if (ptr > end || retAddrReg >= ARRAY_SIZE(reg_info) in arc_unwind()
1075 state.cieEnd = end; in arc_unwind()
1076 end = (const u8 *)(fde + 1) + *fde; in arc_unwind()
1079 uleb128_t augSize = get_uleb128(&ptr, end); in arc_unwind()
1081 if ((ptr += augSize) > end) in arc_unwind()
1139 if (!processCFI(ptr, end, pc, ptrType, &state) in arc_unwind()