Displaying 2 results from an estimated 2 matches for "vtable_actual".
2016 Jan 28
2
Proposal: virtual constant propagation
...(%struct.Derived2*)*** %3, align 8
%vfn_ptr = getelementptr inbounds void (%struct.Derived2*)*, void (%struct.Derived2*)** %vtable, i64 1
%vfn = load void (%struct.Derived2*)*, void (%struct.Derived2*)** %vfn_ptr, align 8
%vfn_i8ptr = bitcast %struct.DerivedDerivedNonVirtual* %vfn to i8*
%vtable_actual = bitcast [3 x i8*]* @_ZTV8Derived2 to i8*
%vfn.devirt_i8ptr = call i8* @llvm.read.vtable(i8* %vfn_i8ptr, i32 0, metadata !5, i8* %vtable_actual)
%vfn.devirt = bitcast i8* %vfn.devirt_i8ptr to void (%struct.Derived2*)*
call void %vfn.devirt(%struct.DerivedDerivedNonVirtual* %2)
The call to...
2016 Jan 28
2
Proposal: virtual constant propagation
Hi,
I just thought about another use case: VTable compression.
If you know that an entry in the Vtable is never used, just remove it!
I’d hope we could even eliminate some unused virtual functions from the final binary.
—
Mehdi
> On Jan 27, 2016, at 10:29 PM, Mehdi Amini via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi Peter,
>
> Pete (Cooper, CC'ed) had a