[all-commits] [llvm/llvm-project] 4461b6: [X86_32][C++] fix 0 sized struct case in vaarg. (#...
Longsheng Mou via All-commits
all-commits at lists.llvm.org
Thu Aug 1 18:21:10 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4461b69022ebd43350f560d4643ba6f373d891b7
https://github.com/llvm/llvm-project/commit/4461b69022ebd43350f560d4643ba6f373d891b7
Author: Longsheng Mou <moulongsheng at huawei.com>
Date: 2024-08-02 (Fri, 02 Aug 2024)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGenCXX/regparm.cpp
M clang/test/CodeGenCXX/x86_32-vaarg.cpp
Log Message:
-----------
[X86_32][C++] fix 0 sized struct case in vaarg. (#86388)
struct SuperEmpty { struct{ int a[0];} b;};
Such 0 sized structs in c++ mode can not be ignored in i386 for that c++
fields are never empty.But when EmitVAArg, its size is 0, so that
va_list not increase.Maybe we can just Ignore this kind of arguments,
like X86_64 did. Fix #86385.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list