aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenFunction.cpp
diff options
context:
space:
mode:
authorKuba Mracek <mracek@apple.com>2022-02-17 19:41:46 -0800
committerKuba Mracek <mracek@apple.com>2022-02-17 19:41:46 -0800
commit6b53ad298e95a9f1cb5770dcbaa71cb4ea343021 (patch)
tree9aed2a6c7f484c6b0d5289dd8acccff12e678115 /clang/lib/CodeGen/CodeGenFunction.cpp
parent9dcb5275e5ce03df1f0ba66f7025b904f7f647c2 (diff)
downloadllvm-6b53ad298e95a9f1cb5770dcbaa71cb4ea343021.zip
llvm-6b53ad298e95a9f1cb5770dcbaa71cb4ea343021.tar.gz
llvm-6b53ad298e95a9f1cb5770dcbaa71cb4ea343021.tar.bz2
[GlobalDCE] [VFE] Avoid dropping vfunc dependencies when an invalid vtable entry is present
When we scan vtables for a particular vload in ScanVTableLoad and an entry in one possible vtable is invalid (null or non-fptr), we bail in a wrong way -- we completely stop the scanning of vtables and this results in dropped dependencies and incorrectly removed vfuncs from vtables. Let's fix that by correcting the bailing logic to keep iterating and only skip the invalid entries. Differential Revision: https://reviews.llvm.org/D120006
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions