[CodeGen] Ignore unnamed bitfields before handling vector fields
authorDavid Majnemer <david.majnemer@gmail.com>
Mon, 15 Aug 2016 07:20:40 +0000 (07:20 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Mon, 15 Aug 2016 07:20:40 +0000 (07:20 +0000)
commitb439dfe6babc77800d9f71d0dc5d4ef6cf676a46
tree8f43ac18a9304e3785292e8111377d18f65578b9
parentb229cb0a43176dc75cc3883b1595c19e919ce00b
[CodeGen] Ignore unnamed bitfields before handling vector fields

We processed unnamed bitfields after our logic for non-vector field
elements in records larger than 128 bits.  The vector logic would
determine that the bit-field disqualifies the record from occupying a
register despite the unnamed bit-field not participating in the record
size nor its alignment.

N.B. This behavior matches GCC and ICC.

llvm-svn: 278656
clang/lib/CodeGen/TargetInfo.cpp
clang/test/CodeGen/x86_64-arguments.c