tingwang added inline comments.
================ Comment at: clang/lib/CodeGen/CodeGenModule.cpp:522 EmitCXXThreadLocalInitFunc(); + if (getTriple().isOSAIX()) { + genAssocMeta(); ---------------- shchenz wrote: > Seems this dos not follow other functions call's style. Can we call a > function like `EmitAssociatedMetadata()` here and do the clean up > (`cleanupAssoc()` may not be needed) in the `EmitAssociatedMetadata()`? Thanks! I will update the code. ================ Comment at: clang/test/CodeGen/PowerPC/aix-init-ref-null.cpp:2 +// RUN: %clang_cc1 -triple powerpc64-ibm-aix-xcoff -emit-llvm -O3 -x c++ \ +// RUN: -debug-info-kind=limited < %s | \ +// RUN: FileCheck %s ---------------- shchenz wrote: > is `-debug-info-kind=limited` or `-O3` necessary in this test? Same as other > new added cases. Oh, "-debug-info-kind=limited" is not required. I will remove those. The "-O3" flag is required to show that associated metadata can be `nullptr`. Without "-O3", normal llvm.global_ctors will be generated. ================ Comment at: clang/test/CodeGen/PowerPC/aix-ref-tls_init.cpp:10 +// CHECK: @r = thread_local global ptr null, align [[ALIGN:[0-9]+]], !dbg ![[DBG0:[0-9]+]], !associated ![[ASSOC0:[0-9]+]] +// CHECK: ![[ASSOC0]] = !{ptr @__tls_init} ---------------- shchenz wrote: > Not sure if this is right or not. XLC on AIX seems refer to `__tls_get_addr` > instead of `__tls_init`... I saw some case that AIX generated tls related association, and I was postulating that the association should be linked to _tls_init. I will revisit my case and update with more info or correct the association later. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125095/new/ https://reviews.llvm.org/D125095 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits