diff options
| author | Fangrui Song <maskray@google.com> | 2019-02-09 09:18:37 +0000 |
|---|---|---|
| committer | Fangrui Song <maskray@google.com> | 2019-02-09 09:18:37 +0000 |
| commit | 6e679f8ba5d08dac53c8935b55663da826c77396 (patch) | |
| tree | edcb94b06506177c529f88ebe9336837e84bb399 /compiler-rt/lib | |
| parent | c5cb2ce905cdf232348da103cc2e5751b14a45f7 (diff) | |
| download | bcm5719-llvm-6e679f8ba5d08dac53c8935b55663da826c77396.tar.gz bcm5719-llvm-6e679f8ba5d08dac53c8935b55663da826c77396.zip | |
[GlobalOpt] Simplify __cxa_atexit elimination
cxxDtorIsEmpty checks callers recursively to determine if the
__cxa_atexit-registered function is empty, and eliminates the
__cxa_atexit call accordingly.
This recursive check is unnecessary as redundant instructions and
function calls can be removed by early-cse and inliner. In addition,
cxxDtorIsEmpty does not mark visited function and it may visit a
function exponential times (multiplication principle).
llvm-svn: 353603
Diffstat (limited to 'compiler-rt/lib')
0 files changed, 0 insertions, 0 deletions

