Home | History | Annotate | Download | only in CodeGen
      1 // RUN: %clang_cc1 -triple i686-windows-itanium -emit-llvm -o - %s | FileCheck %s
      2 
      3 struct f1 {
      4   float f;
      5 };
      6 
      7 struct f1 return_f1(void) { while (1); }
      8 
      9 // CHECK: define i32 @return_f1()
     10 
     11 void receive_f1(struct f1 a0) { }
     12 
     13 // CHECK: define void @receive_f1(float %a0.0)
     14 
     15 struct f2 {
     16   float f;
     17   float g;
     18 };
     19 
     20 struct f2 return_f2(void) { while (1); }
     21 
     22 // CHECK: define i64 @return_f2()
     23 
     24 void receive_f2(struct f2 a0) { }
     25 
     26 // CHECK: define void @receive_f2(float %a0.0, float %a0.1)
     27 
     28 struct f4 {
     29   float f;
     30   float g;
     31   float h;
     32   float i;
     33 };
     34 
     35 struct f4 return_f4(void) { while (1); }
     36 
     37 // CHECK: define void @return_f4(%struct.f4* noalias sret %agg.result)
     38 
     39 void receive_f4(struct f4 a0) { }
     40 
     41 // CHECK: define void @receive_f4(float %a0.0, float %a0.1, float %a0.2, float %a0.3)
     42 
     43