зеркало из https://github.com/microsoft/clang-1.git
x86-32: Use Ignore to avoid passing empty structs (instead of Expand).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63813 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
ca008822e8
Коммит
3170c93d26
|
@ -323,10 +323,10 @@ ABIArgInfo X86_32ABIInfo::classifyArgumentType(QualType Ty,
|
|||
if (RT->getDecl()->hasFlexibleArrayMember())
|
||||
return ABIArgInfo::getByVal(0);
|
||||
|
||||
// Expand empty structs (i.e. ignore)
|
||||
// Ignore empty structs.
|
||||
uint64_t Size = Context.getTypeSize(Ty);
|
||||
if (Ty->isStructureType() && Size == 0)
|
||||
return ABIArgInfo::getExpand();
|
||||
return ABIArgInfo::getIgnore();
|
||||
|
||||
// Expand structs with size <= 128-bits which consist only of
|
||||
// basic types (int, long long, float, double, xxx*). This is
|
||||
|
|
Загрузка…
Ссылка в новой задаче