brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 41f4d71 Raw
47 lines · c
1// RUN: %clang_cc1 -emit-llvm-only -triple armv7-apple-darwin -fdump-record-layouts %s 2>/dev/null \2// RUN:            | FileCheck %s3 4#pragma ms_struct on5 6union A {7  unsigned long long x : 32;8  unsigned long long y : 32;9} a;10// CHECK:*** Dumping AST Record Layout11// CHECK-NEXT:        0 | union A12// CHECK-NEXT:   0:0-31 |   unsigned long long x13// CHECK-NEXT:   0:0-31 |   unsigned long long y14// CHECK-NEXT:          | [sizeof=8, align=1]15 16union B {17  __attribute__((aligned(4)))18  unsigned long long x : 32;19  unsigned long long y : 32;20} b;21// CHECK:*** Dumping AST Record Layout22// CHECK-NEXT:       0 | union B23// CHECK-NEXT:  0:0-31 |   unsigned long long x24// CHECK-NEXT:  0:0-31 |   unsigned long long y25// CHECK-NEXT:         | [sizeof=8, align=1]26 27union C {28  unsigned long long : 0;29  unsigned short y : 8;30} c;31// CHECK:*** Dumping AST Record Layout32// CHECK-NEXT:       0 | union C33// CHECK-NEXT:     0:- |   unsigned long long34// CHECK-NEXT:   0:0-7 |   unsigned short y35// CHECK-NEXT:         | [sizeof=2, align=1]36 37union D {38  unsigned long long : 0;39  unsigned short : 0;40} d;41// CHECK:*** Dumping AST Record Layout42// CHECK-NEXT:       0 | union D43// CHECK-NEXT:     0:- |   unsigned long long44// CHECK-NEXT:     0:- |   unsigned short45// CHECK-NEXT:         | [sizeof=1, align=1]46 47