[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Longsheng Mou via cfe-commits
CoTinker wrote: Thanks. https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Eli Friedman via cfe-commits
https://github.com/efriedma-quic approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Eli Friedman via cfe-commits
@@ -3124,26 +3124,76 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 3ff5909e6c0cc7acff96ed4e8524a3b5949b209f Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/3] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 3ff5909e6c0cc7acff96ed4e8524a3b5949b209f Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/3] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 3ff5909e6c0cc7acff96ed4e8524a3b5949b209f Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-12 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From a1d5fffca7b8a63efa338f1aeac3a516145ca569 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From a1d5fffca7b8a63efa338f1aeac3a516145ca569 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker edited https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker edited https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
@@ -3124,26 +3124,76 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From a1d5fffca7b8a63efa338f1aeac3a516145ca569 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
@@ -3124,26 +3124,76 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 328ae6052894eb45c4e7541dadf63a3a04540cda Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-11 Thread Eli Friedman via cfe-commits
@@ -3124,26 +3124,76 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-10 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 328ae6052894eb45c4e7541dadf63a3a04540cda Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-09 Thread Longsheng Mou via cfe-commits
@@ -3124,26 +3124,40 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-09 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker updated https://github.com/llvm/llvm-project/pull/101639 >From 328ae6052894eb45c4e7541dadf63a3a04540cda Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 2 Aug 2024 16:36:31 +0800 Subject: [PATCH 1/2] [X86_64] Fix empty field error in vaarg of C++. Such struct

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-08 Thread Eli Friedman via cfe-commits
@@ -3124,26 +3124,40 @@ RValue X86_64ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, CGF.Builder.CreateStore(V, CGF.Builder.CreateStructGEP(Tmp, 1)); RegAddr = Tmp.withElementType(LTy); - } else if (neededInt) { -RegAddr = Address(CGF.Builder.CreateG

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-06 Thread Longsheng Mou via cfe-commits
CoTinker wrote: Ping~ https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-04 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker edited https://github.com/llvm/llvm-project/pull/101639 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-02 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang @llvm/pr-subscribers-backend-x86 Author: Longsheng Mou (CoTinker) Changes Such struct types: ``` struct { struct{} a; long long b; }; stuct { struct{} a; double b; }; ``` For such structures, Lo is NoClass and Hi is Integer/SSE. And when t

[clang] [X86_64] Fix empty field error in vaarg of C++. (PR #101639)

2024-08-02 Thread Longsheng Mou via cfe-commits
https://github.com/CoTinker created https://github.com/llvm/llvm-project/pull/101639 Such struct types: ``` struct { struct{} a; long long b; }; stuct { struct{} a; double b; }; ``` For such structures, Lo is NoClass and Hi is Integer/SSE. And when this structure argument is passed, th