Displaying 2 results from an estimated 2 matches for "vtable2".
Did you mean:
vtable
2015 Jul 31
4
[LLVMdev] Clang devirtualization proposal
On Fri, Jul 31, 2015 at 3:53 PM, Philip Reames <listmail at philipreames.com>
wrote:
>
> Quoting from the google doc: "If we don’t know definition of some
> function, we assume that it will not call @llvm.invariant.group.barrier().
> "
> This part really really bugs me. We generally try to assume minimal
> knowledge of external functions (i.e. they can do
2015 Aug 01
0
[LLVMdev] Clang devirtualization proposal
...t. We should end up a with two loads of the vtable using
the same SSA value and the same invariant.group metadata. The later can
be forwarded from the former without issue right?
%a = ...;
%vtable1 = load %a + Y !invariant.group !0
%foo1 = load %vtable1 + X, !invariant.group !1
call %foo1(%a)
%vtable2 = load %a + Y !invariant.group !0 <-- Per state rules, this
value forwards from previous vtable load
%foo2 = load %vtable2 + X, !invariant.group !1
call %foo2(%a)
Philip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-d...