This annotation allows the optimizer to split vtable groups, as permitted by
a change to the Itanium ABI that prevents compilers from adjusting virtual
table pointers between virtual tables.
Depends on D22296
Paths
| Differential D24431
CodeGen: Start using inrange annotations on vtable getelementptr. ClosedPublic Authored by pcc on Sep 9 2016, 2:42 PM.
Details Summary This annotation allows the optimizer to split vtable groups, as permitted by Depends on D22296
Diff Detail
Event Timelinepcc retitled this revision from to CodeGen: Start using inrange annotations on vtable getelementptr.. pcc updated this object. pcc added a parent revision: D22296: CodeGen: New vtable group representation: struct of vtable arrays.. rjmccall edited edge metadata. Comment ActionsI'm not sure I like this IR design, but this use of it seems fine. LGTM. This revision is now accepted and ready to land.Dec 7 2016, 8:53 PM Closed by commit rL289585: CodeGen: Start using inrange annotations on vtable getelementptr. (authored by pcc). · Explain WhyDec 13 2016, 1:01 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 75494 clang/lib/CodeGen/CGVTT.cpp
clang/lib/CodeGen/ItaniumCXXABI.cpp
clang/test/CodeGenCXX/const-init-cxx11.cpp
clang/test/CodeGenCXX/constructor-init.cpp
clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp
clang/test/CodeGenCXX/copy-constructor-synthesis.cpp
clang/test/CodeGenCXX/microsoft-interface.cpp
clang/test/CodeGenCXX/skip-vtable-pointer-initialization.cpp
clang/test/CodeGenCXX/strict-vtable-pointers.cpp
clang/test/CodeGenCXX/vtable-assume-load.cpp
clang/test/CodeGenCXX/vtable-pointer-initialization.cpp
clang/test/CodeGenCXX/vtt-layout.cpp
|