diff options
author | Teresa Johnson <tejohnson@google.com> | 2020-01-24 12:24:18 -0800 |
---|---|---|
committer | Teresa Johnson <tejohnson@google.com> | 2020-01-27 07:55:05 -0800 |
commit | 2f63d549f1e1edd165392837aaa53f569f7fb88d (patch) | |
tree | 61db1979f4f195e45d48a2b3d9a28dc29ef7c744 /clang/lib/CodeGen/CodeGenModule.h | |
parent | bc3d900fa5fc537163b8556a6b59925231bc4d09 (diff) | |
download | llvm-2f63d549f1e1edd165392837aaa53f569f7fb88d.zip llvm-2f63d549f1e1edd165392837aaa53f569f7fb88d.tar.gz llvm-2f63d549f1e1edd165392837aaa53f569f7fb88d.tar.bz2 |
Restore "[LTO/WPD] Enable aggressive WPD under LTO option"
This restores 59733525d37cf9ad88b5021b33ecdbaf2e18911c (D71913), along
with bot fix 19c76989bb505c3117730c47df85fd3800ea2767.
The bot failure should be fixed by D73418, committed as
af954e441a5170a75687699d91d85e0692929d43.
I also added a fix for non-x86 bot failures by requiring x86 in new test
lld/test/ELF/lto/devirt_vcall_vis_public.ll.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index 115e754..a711d5c 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -1292,6 +1292,11 @@ public: /// optimization. bool HasHiddenLTOVisibility(const CXXRecordDecl *RD); + /// Returns whether the given record has public std LTO visibility + /// and therefore may not participate in (single-module) CFI and whole-program + /// vtable optimization. + bool HasLTOVisibilityPublicStd(const CXXRecordDecl *RD); + /// Returns the vcall visibility of the given type. This is the scope in which /// a virtual function call could be made which ends up being dispatched to a /// member function of this class. This scope can be wider than the visibility |