]> granicus.if.org Git - clang/commit
This patch addresses PR13948.
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>
Fri, 12 Oct 2012 19:26:17 +0000 (19:26 +0000)
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>
Fri, 12 Oct 2012 19:26:17 +0000 (19:26 +0000)
commitb1f5fe017a596e0c7749dee10c9d3ff1c0f2788c
tree3b161601dfacadac22fcde63c540f5c8ba7b8698
parent44cbe67dc0e0a35c5369689710a25603ba67356f
This patch addresses PR13948.

For 64-bit PowerPC SVR4, an aggregate containing only one
floating-point field (float, double, or long double) must be passed in
a register as though just that field were present.  This patch
addresses the issue during Clang code generation by specifying in the
ABIArgInfo for the argument that the underlying type is passed
directly in a register.  The included test case verifies flat and
nested structs for the three data types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165816 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/TargetInfo.cpp
test/CodeGen/ppc64-struct-onefloat.c [new file with mode: 0644]