blob: 8a605c1b67c896c0497325e08c78f427dab60f0e [file] [log] [blame]
Chris Lattner71305cc2011-07-15 05:16:14 +00001// RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
Nuno Lopes77e1dfc2008-06-06 16:41:08 +00002
3typedef struct _zend_ini_entry zend_ini_entry;
4struct _zend_ini_entry {
Mike Stump1eb44332009-09-09 15:08:12 +00005 void *mh_arg1;
Nuno Lopes77e1dfc2008-06-06 16:41:08 +00006};
7
8char a;
9
10const zend_ini_entry ini_entries[] = {
Mike Stump1eb44332009-09-09 15:08:12 +000011 { ((char*)&((zend_ini_entry*)0)->mh_arg1 - (char*)(void*)0)},
Nuno Lopes77e1dfc2008-06-06 16:41:08 +000012};
Chris Lattner2bc00252010-07-05 18:03:30 +000013
14// PR7564
15struct GLGENH {
16 int : 27;
17 int EMHJAA : 1;
18};
19
20struct GLGENH ABHFBF = {1};
Argyrios Kyrtzidis65e7a9e2011-02-01 00:52:10 +000021
22typedef __attribute__(( ext_vector_type(2) )) unsigned int uint2;
23typedef __attribute__(( __vector_size__(8) )) unsigned int __neon_uint32x2_t;
24
25// rdar://8183908
26typedef struct __simd64_uint32_t {
27 __neon_uint32x2_t val;
28} uint32x2_t;
29void foo() {
30 const uint32x2_t signBit = { (uint2) 0x80000000 };
31}
Chris Lattner71305cc2011-07-15 05:16:14 +000032
33// CHECK: %struct.fp_struct_foo = type { void (i32)* }
34struct fp_struct_bar { int a; };
35
36struct fp_struct_foo {
37 void (*FP)(struct fp_struct_bar);
38} G;
39