Home | History | Annotate | Download | only in CodeGen
      1 // RUN: %clang_cc1 %s -emit-llvm -g -o /dev/null
      2 
      3 typedef long unsigned int size_t;
      4 typedef unsigned short int uint16_t;
      5 typedef unsigned int uint32_t;
      6 typedef unsigned long int uint64_t;
      7 typedef uint16_t Elf64_Half;
      8 typedef uint32_t Elf64_Word;
      9 typedef uint64_t Elf64_Xword;
     10 typedef uint64_t Elf64_Addr;
     11 typedef uint64_t Elf64_Off;
     12 typedef struct
     13 {
     14   Elf64_Word p_type;
     15   Elf64_Off p_offset;
     16   Elf64_Addr p_vaddr;
     17   Elf64_Xword p_align;
     18 }
     19 Elf64_Phdr;
     20 struct 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 };
     27 typedef unsigned _Unwind_Ptr;
     28 struct 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 };
     47 typedef int sword;
     48 typedef unsigned int uword;
     49 struct dwarf_fde
     50 {
     51   uword length;
     52   sword CIE_delta;
     53   unsigned char pc_begin[];
     54 };
     55 typedef struct dwarf_fde fde;
     56 struct unw_eh_callback_data
     57 {
     58   const fde *ret;
     59   struct frame_hdr_cache_element *link;
     60 }
     61 frame_hdr_cache[8];
     62 
     63 _Unwind_Ptr
     64 base_from_cb_data (struct unw_eh_callback_data *data)
     65 {
     66 }
     67 
     68 void
     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 }
     75