1/* Definition of object in frame unwind info. Generic version.
2 Copyright (C) 2000-2022 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19#include <sys/types.h>
20
21struct dwarf_fde;
22struct fde_vector;
23
24struct object
25{
26 void *pc_begin;
27 void *tbase;
28 void *dbase;
29 union {
30 struct dwarf_fde *single;
31 struct dwarf_fde **array;
32 struct fde_vector *sort;
33 } u;
34
35 union {
36 struct {
37 unsigned long sorted : 1;
38 unsigned long from_array : 1;
39 unsigned long mixed_encoding : 1;
40 unsigned long encoding : 8;
41 /* ??? Wish there was an easy way to detect a 64-bit host here;
42 we've got 32 bits left to play with... */
43 unsigned long count : 21;
44 } b;
45 size_t i;
46 } s;
47
48 struct object *next;
49};
50

source code of glibc/sysdeps/generic/gccframe.h