blob: 310ea3bfa17b9ed33a5c848150835f0088b6b1ac [file] [log] [blame]
Duncan Sands8f7c2e62009-01-21 11:51:17 +00001// RUN: %llvmgcc %s -S -g
2
3typedef long unsigned int size_t;
4typedef unsigned short int uint16_t;
5typedef unsigned int uint32_t;
6typedef unsigned long int uint64_t;
7typedef uint16_t Elf64_Half;
8typedef uint32_t Elf64_Word;
9typedef uint64_t Elf64_Xword;
10typedef uint64_t Elf64_Addr;
11typedef uint64_t Elf64_Off;
12typedef struct
13{
14 Elf64_Word p_type;
15 Elf64_Off p_offset;
16 Elf64_Addr p_vaddr;
17 Elf64_Xword p_align;
18}
19Elf64_Phdr;
20struct dl_phdr_info
21{
22 const char *dlpi_name;
23 const Elf64_Phdr *dlpi_phdr;
24 Elf64_Half dlpi_phnum;
25 unsigned long long int dlpi_adds;
26};
27typedef unsigned _Unwind_Ptr;
28struct object
29{
30 union
31 {
32 const struct dwarf_fde *single;
33 struct dwarf_fde **array;
34 struct fde_vector *sort;
35 }
36 u;
37 union
38 {
39 struct
40 {
41 }
42 b;
43 }
44 s;
45 struct object *next;
46};
47typedef int sword;
48typedef unsigned int uword;
49struct dwarf_fde
50{
51 uword length;
52 sword CIE_delta;
53 unsigned char pc_begin[];
54};
55typedef struct dwarf_fde fde;
56struct unw_eh_callback_data
57{
58 const fde *ret;
59 struct frame_hdr_cache_element *link;
60}
61frame_hdr_cache[8];
62
63_Unwind_Ptr
64base_from_cb_data (struct unw_eh_callback_data *data)
65{
66}
67
68void
69_Unwind_IteratePhdrCallback (struct dl_phdr_info *info, size_t size, void *ptr)
70{
71 const unsigned char *p;
72 const struct unw_eh_frame_hdr *hdr;
73 struct object ob;
74}