Lines Matching refs:start
98 * start = first entry
103 const struct unwind_idx *start,
110 __func__, addr, start, origin, stop);
116 if (addr < (unsigned long)start)
117 /* negative offsets: [start; origin) */
121 start = origin;
123 /* prel31 for address relavive to start */
124 addr_prel31 = (addr - (unsigned long)start) & 0x7fffffff;
126 while (start < stop - 1) {
127 const struct unwind_idx *mid = start + ((stop - start) >> 1);
130 * As addr_prel31 is relative to start an offset is needed to
133 if (addr_prel31 - ((unsigned long)mid - (unsigned long)start) <
137 /* keep addr_prel31 relative to start */
139 (unsigned long)start);
140 start = mid;
144 if (likely(start->addr_offset <= addr_prel31))
145 return start;
153 const struct unwind_idx *start, const struct unwind_idx *stop)
155 pr_debug("%s(%p, %p)\n", __func__, start, stop);
156 while (start < stop) {
157 const struct unwind_idx *mid = start + ((stop - start) >> 1);
161 start = mid + 1;
195 idx = search_index(addr, table->start,
528 struct unwind_table *unwind_table_add(unsigned long start, unsigned long size,
535 pr_debug("%s(%08lx, %08lx, %08lx, %08lx)\n", __func__, start, size,
541 tab->start = (const struct unwind_idx *)start;
542 tab->stop = (const struct unwind_idx *)(start + size);
543 tab->origin = unwind_find_origin(tab->start, tab->stop);