search for: vtable_a

Displaying 4 results from an estimated 4 matches for "vtable_a".

Did you mean: table_a
2018 Mar 19
4
RFC: Devirtualization v2
...ally legal optimization in LLVM and we surely still want to do it. In C++ however, If you replaced b with a inside the if statement’s body, then you would introduce UB. The problem arises because after changing %b to %a in LLVM, the load from virtual pointer can be devirtualized to different type. %vtable_a = load %a, !invariant.group;;;; %a == %b%bool = icmp %a, %bbr %bool, %if, %afterif:; if this will be changed to %a, then the optimizer will be able to replace ; %vtable_b with %vtable_a%vtable_b = load %b, !invariant.groupFor other corner cases check out appendix.SolutionThe proposed solution is to...
2018 Mar 28
0
[cfe-dev] RFC: Devirtualization v2
...ptimization in LLVM and we surely still want to do it. In C++ however, If you replaced b with a inside the if statement’s body, then you would introduce UB. The problem arises because after changing %b to %a in LLVM, the load from virtual pointer can be devirtualized to different type. > > %vtable_a = load %a, !invariant.group > ;;; > ; %a == %b > %bool = icmp %a, %b > br %bool, %if, %after > if: > ; if this will be changed to %a, then the optimizer will be able to replace > ; %vtable_b with %vtable_a > %vtable_b = load %b, !invariant.group > > For other corner...
2018 Mar 29
2
[cfe-dev] RFC: Devirtualization v2
...ion in LLVM and we > surely still want to do it. In C++ however, If you replaced b with a inside > the if statement’s body, then you would introduce UB. The problem arises > because after changing %b to %a in LLVM, the load from virtual pointer can > be devirtualized to different type. %vtable_a = load %a, > !invariant.group;;;; %a == %b%bool = icmp %a, %bbr %bool, %if, %afterif:; > if this will be changed to %a, then the optimizer will be able to replace ; > %vtable_b with %vtable_a%vtable_b = load %b, !invariant.groupFor other > corner cases check out appendix.SolutionThe pro...
2016 Jan 28
8
Proposal: virtual constant propagation
Hi all, I'd like to make the following proposal to implement an optimization called virtual constant propagation. ==Introduction== After enabling control flow integrity protection in Chromium, we have observed an unacceptable performance regression in certain critical layout microbenchmarks. Profiling [0] revealed that the cause of the regression was a large number of virtual calls, each