[clang] [clang][CodeGen] `used` globals && the payloads for global ctors & dtors are globals (PR #93601)
Matt Arsenault via cfe-commits
cfe-commits at lists.llvm.org
Tue May 28 12:42:58 PDT 2024
================
@@ -2047,9 +2047,9 @@ void CodeGenModule::EmitCtorList(CtorList &Fns, const char *GlobalName) {
llvm::Type *CtorPFTy = llvm::PointerType::get(CtorFTy,
TheModule.getDataLayout().getProgramAddressSpace());
- // Get the type of a ctor entry, { i32, void ()*, i8* }.
+ // Get the type of a ctor entry, { i32, program void ()*, global i8* }.
llvm::StructType *CtorStructTy = llvm::StructType::get(
- Int32Ty, CtorPFTy, VoidPtrTy);
+ Int32Ty, CtorPFTy, GlobalsInt8PtrTy);
----------------
arsenm wrote:
What compatibility is broken here? Just bitcode loading? Do we just need to implement an autoupgrade for this?
https://github.com/llvm/llvm-project/pull/93601
More information about the cfe-commits
mailing list