brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · da84671 Raw
70 lines · c
1// RUN: %clang_cc1 -Wno-strict-prototypes -O1 -disable-llvm-optzns -std=gnu89 -triple i386-apple-darwin9 -emit-llvm %s -o - | FileCheck -check-prefix CHECK-GNU89 %s2// RUN: %clang_cc1 -Wno-strict-prototypes -O1 -disable-llvm-optzns -std=c99 -triple i386-apple-darwin9 -emit-llvm %s -o - | FileCheck -check-prefix CHECK-C99 %s3 4// CHECK-GNU89-LABEL: define{{.*}} i32 @f0()5// CHECK-C99-LABEL: define{{.*}} i32 @f0()6int f0(void);7int f0(void) { return 0; }8 9// CHECK-GNU89-LABEL: define{{.*}} i32 @f1()10// CHECK-C99-LABEL: define{{.*}} i32 @f1()11inline int f1(void);12int f1(void) { return 0; }13 14// CHECK-GNU89-LABEL: define{{.*}} i32 @f2()15// CHECK-C99-LABEL: define{{.*}} i32 @f2()16int f2(void);17inline int f2(void) { return 0; }18 19// CHECK-GNU89-LABEL: define{{.*}} i32 @f3()20// CHECK-C99-LABEL: define{{.*}} i32 @f3()21extern inline int f3(void);22int f3(void) { return 0; }23 24// CHECK-GNU89-LABEL: define{{.*}} i32 @f5()25// CHECK-C99-LABEL: define{{.*}} i32 @f5()26extern inline int f5(void);27inline int f5(void) { return 0; }28 29// CHECK-GNU89-LABEL: define{{.*}} i32 @f6()30// CHECK-C99-LABEL: define{{.*}} i32 @f6()31inline int f6(void);32extern inline int f6(void) { return 0; }33 34// CHECK-GNU89-LABEL: define{{.*}} i32 @f7()35// CHECK-C99-LABEL: define{{.*}} i32 @f7()36extern inline int f7(void);37extern int f7(void) { return 0; }38 39// CHECK-GNU89-LABEL: define{{.*}} i32 @fA()40inline int fA(void) { return 0; }41 42// CHECK-GNU89-LABEL: define{{.*}} i32 @fB()43inline int fB() { return 0; }44 45// CHECK-GNU89-LABEL: define available_externally i32 @f4()46// CHECK-C99-LABEL: define{{.*}} i32 @f4()47int f4(void);48extern inline int f4(void) { return 0; }49 50// CHECK-GNU89-LABEL: define available_externally i32 @f8()51// CHECK-C99-LABEL: define{{.*}} i32 @f8()52extern int f8(void);53extern inline int f8(void) { return 0; }54 55// CHECK-GNU89-LABEL: define available_externally i32 @f9()56// CHECK-C99-LABEL: define{{.*}} i32 @f9()57extern inline int f9(void);58extern inline int f9(void) { return 0; }59 60// CHECK-C99-LABEL: define available_externally i32 @fA()61 62// CHECK-C99-LABEL: define{{.*}} i32 @fB()63 64int test_all(void) { 65  return f0() + f1() + f2() + f3() + f4() + f5() + f6() + f7() + f8() + f9() 66    + fA() + fB();67}68 69int fB(void);70