[all-commits] [llvm/llvm-project] c3f015: [MachO] Disable atexit()-based lowering when LTO'i...
Julian Lettner via All-commits
all-commits at lists.llvm.org
Tue Apr 25 12:13:56 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c3f0153ec27a5e2cff97179d319ab99651c4c539
https://github.com/llvm/llvm-project/commit/c3f0153ec27a5e2cff97179d319ab99651c4c539
Author: Julian Lettner <julian.lettner at apple.com>
Date: 2023-04-25 (Tue, 25 Apr 2023)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/test/Driver/darwin-ld-lto.c
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
M llvm/test/CodeGen/ARM/ctors_dtors.ll
Log Message:
-----------
[MachO] Disable atexit()-based lowering when LTO'ing kernel/kext code
The kernel and kext environments do not provide the `__cxa_atexit()`
function, so we can't use it for lowering global module destructors.
Unfortunately, just querying for "compiling for kernel/kext?" in the LTO
pipeline isn't possible (kernel/kext identifier isn't part of the triple
yet) so we need to pass down a CodeGen flag.
rdar://93536111
Differential Revision: https://reviews.llvm.org/D148967
More information about the All-commits
mailing list