[all-commits] [llvm/llvm-project] ec6ada: [AIX] report_fatal_error on `-fregister_global_dto...
xiangling-liao via All-commits
all-commits at lists.llvm.org
Fri Jul 17 13:16:36 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: ec6ada62643cf7cded8160e04cce163323112ade
https://github.com/llvm/llvm-project/commit/ec6ada62643cf7cded8160e04cce163323112ade
Author: Xiangling Liao <Xiangling.Liao at ibm.com>
Date: 2020-07-17 (Fri, 17 Jul 2020)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
A clang/test/CodeGenCXX/aix-sinit-register-global-dtors-with-atexit.cpp
M clang/test/Driver/cxa-atexit.cpp
Log Message:
-----------
[AIX] report_fatal_error on `-fregister_global_dtors_with_atexit` for static init
On AIX, the semantic of global_dtors contains __sterm functions associated with C++
cleanup actions and user-declared __attribute__((destructor)) functions. We should
never merely register __sterm with atexit(), so currently
-fregister_global_dtors_with_atexit does not work well on AIX: It would cause
finalization actions to not occur when unloading shared libraries. We need to figure
out a way to handle that when we start supporting user-declared
__attribute__((destructor)) functions.
Currently we report_fatal_error on this option temporarily.
Differential Revision: https://reviews.llvm.org/D83974
More information about the All-commits
mailing list