From 3cd526136a060ccb9798ad442838eb223357b041 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 23 Jul 2009 06:07:59 +0000 Subject: [PATCH] testcase for PR4590 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76868 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/FrontendC/2009-07-22-StructLayout.c | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 test/FrontendC/2009-07-22-StructLayout.c diff --git a/test/FrontendC/2009-07-22-StructLayout.c b/test/FrontendC/2009-07-22-StructLayout.c new file mode 100644 index 00000000000..74904da33e0 --- /dev/null +++ b/test/FrontendC/2009-07-22-StructLayout.c @@ -0,0 +1,34 @@ +// RUN: %llvmgcc %s -S -o /dev/null +// PR4590 + +typedef unsigned char __u8; +typedef unsigned int __le32; +typedef unsigned int __u32; +typedef unsigned short __le16; +typedef unsigned short __u16; + +struct usb_cdc_ether_desc { + __u8 bLength; + __u8 bDescriptorType; + __u8 bDescriptorSubType; + + __u8 iMACAddress; + __le32 bmEthernetStatistics; + __le16 wMaxSegmentSize; + __le16 wNumberMCFilters; + __u8 bNumberPowerFilters; +} __attribute__ ((packed)); + + +static struct usb_cdc_ether_desc ecm_desc __attribute__ ((__section__(".init.data"))) = { + .bLength = sizeof ecm_desc, + .bDescriptorType = ((0x01 << 5) | 0x04), + .bDescriptorSubType = 0x0f, + + + + .bmEthernetStatistics = (( __le32)(__u32)(0)), + .wMaxSegmentSize = (( __le16)(__u16)(1514)), + .wNumberMCFilters = (( __le16)(__u16)(0)), + .bNumberPowerFilters = 0, +}; -- 2.34.1