2011-07-15 13:16:14 +08:00
|
|
|
// RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
|
2008-06-07 00:41:08 +08:00
|
|
|
|
|
|
|
typedef struct _zend_ini_entry zend_ini_entry;
|
|
|
|
struct _zend_ini_entry {
|
2009-09-09 23:08:12 +08:00
|
|
|
void *mh_arg1;
|
2008-06-07 00:41:08 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
char a;
|
|
|
|
|
|
|
|
const zend_ini_entry ini_entries[] = {
|
2009-09-09 23:08:12 +08:00
|
|
|
{ ((char*)&((zend_ini_entry*)0)->mh_arg1 - (char*)(void*)0)},
|
2008-06-07 00:41:08 +08:00
|
|
|
};
|
2010-07-06 02:03:30 +08:00
|
|
|
|
|
|
|
// PR7564
|
|
|
|
struct GLGENH {
|
|
|
|
int : 27;
|
|
|
|
int EMHJAA : 1;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct GLGENH ABHFBF = {1};
|
2011-02-01 08:52:10 +08:00
|
|
|
|
|
|
|
typedef __attribute__(( ext_vector_type(2) )) unsigned int uint2;
|
|
|
|
typedef __attribute__(( __vector_size__(8) )) unsigned int __neon_uint32x2_t;
|
|
|
|
|
|
|
|
// rdar://8183908
|
|
|
|
typedef struct __simd64_uint32_t {
|
|
|
|
__neon_uint32x2_t val;
|
|
|
|
} uint32x2_t;
|
|
|
|
void foo() {
|
|
|
|
const uint32x2_t signBit = { (uint2) 0x80000000 };
|
|
|
|
}
|
2011-07-15 13:16:14 +08:00
|
|
|
|
|
|
|
// CHECK: %struct.fp_struct_foo = type { void (i32)* }
|
|
|
|
struct fp_struct_bar { int a; };
|
|
|
|
|
|
|
|
struct fp_struct_foo {
|
|
|
|
void (*FP)(struct fp_struct_bar);
|
|
|
|
} G;
|
|
|
|
|