[PATCH] D90892: [AIX][FE] Support constructor/destructor attribute

Xiangling Liao via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 16 08:25:34 PST 2020


Xiangling_L marked 5 inline comments as done.
Xiangling_L added inline comments.


================
Comment at: clang/test/CodeGen/aix-constructor-attribute.cpp:8
 
-int foo() __attribute__((constructor(180)));
+// CHECK: @llvm.global_ctors = appending global [3 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* bitcast (i32 ()* @foo3 to void ()*), i8* null }, { i32, void ()*, i8* } { i32 180, void ()* bitcast (i32 ()* @foo2 to void ()*), i8* null }, { i32, void ()*, i8* } { i32 180, void ()* bitcast (i32 ()* @foo to void ()*), i8* null }]
 
----------------
sfertile wrote:
> Did you mean for this test to be a C or C++ test? If it is meant to be C++ it needs to mangle the function names, but considering the director it is in and the fact we have the same test in CodeGenCXX directory I expect this was meant to be C in which case it needs a `.c` extension and lose the `-x c++` in the run steps.
Thanks for pointing this out to me, I should've changed the file extension when I copied this testcase from CXX testcases.


================
Comment at: clang/test/CodeGenCXX/aix-destructor-attribute.cpp:1
+// RUN: %clang_cc1 -triple powerpc-ibm-aix-xcoff -x c++ -emit-llvm \
+// RUN:     -fno-use-cxa-atexit < %s | \
----------------
sfertile wrote:
> Can I ask why this is added as a new file? Its the same test as `aix-sinit-register-global-dtors-with-atexit.cpp` but without using `-fregister-global-dtors-with-atexit`. I suggest combining the 2.
Agree, it makes more sense to combine two. I tried to make testcases look cleaner by splitting them.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90892/new/

https://reviews.llvm.org/D90892



More information about the cfe-commits mailing list