Looks like this test is missing an XFAIL line.
[oota-llvm.git] / test / FrontendC / 2010-06-28-DbgEntryPC.c
1 // RUN: %llvmgcc -S -O2 -g %s -o - | llc -O2 | FileCheck %s
2 // Use DW_FORM_addr for DW_AT_entry_pc.
3 // Radar 8094785
4
5 // XFAIL: *
6 // XTARGET: x86,i386,i686
7 // CHECK:       .byte   17                      ## DW_TAG_compile_unit
8 // CHECK-NEXT:  .byte   1                       ## DW_CHILDREN_yes
9 // CHECK-NEXT:  .byte   37                      ## DW_AT_producer
10 // CHECK-NEXT:  .byte   8                       ## DW_FORM_string
11 // CHECK-NEXT:  .byte   19                      ## DW_AT_language
12 // CHECK-NEXT:  .byte   11                      ## DW_FORM_data1
13 // CHECK-NEXT:  .byte   3                       ## DW_AT_name
14 // CHECK-NEXT:  .byte   8                       ## DW_FORM_string
15 // CHECK-NEXT:  .byte   82                      ## DW_AT_entry_pc
16 // CHECK-NEXT:  .byte   1                       ## DW_FORM_addr
17 // CHECK-NEXT:  .byte   16                      ## DW_AT_stmt_list
18 // CHECK-NEXT:  .byte   6                       ## DW_FORM_data4
19 // CHECK-NEXT:  .byte   27                      ## DW_AT_comp_dir
20 // CHECK-NEXT:  .byte   8                       ## DW_FORM_string
21 // CHECK-NEXT:  .byte   225                     ## DW_AT_APPLE_optimized
22
23 struct a {
24   int c;
25   struct a *d;
26 };
27
28 int ret;
29
30 void foo(int x) __attribute__((noinline));
31 void *bar(struct a *b) __attribute__((noinline));
32
33 void foo(int x)
34 {
35   ret = x;
36 }
37
38 void *bar(struct a *b) {
39   foo(b->c);
40   return b;
41 }
42
43 int main(int argc, char *argv[]) {
44   struct a e;
45   e.c = 4;
46   e.d = &e;
47
48   (void)bar(&e);
49   return ret;
50 }