[all-commits] [llvm/llvm-project] a85c21: [clang] Allow devirtualisation of final polymorphi...

Oliver Hunt via All-commits all-commits at lists.llvm.org
Mon Oct 27 17:35:39 PDT 2025


  Branch: refs/heads/users/ojhunt/indirect-vcall-via-base-opt
  Home:   https://github.com/llvm/llvm-project
  Commit: a85c21d50e714c86795e309f8410e903d619cf0c
      https://github.com/llvm/llvm-project/commit/a85c21d50e714c86795e309f8410e903d619cf0c
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M clang/lib/CodeGen/CodeGenFunction.cpp
    A clang/test/CodeGenCXX/indirect-final-vcall-through-base.cpp

  Log Message:
  -----------
  [clang] Allow devirtualisation of final polymorphic calls via a base class

When -fstrict-vtable-pointers is set we can devirtualise calls to
virtual functions when called indirectly through a base class.

This only permits the optimization for regular methods, not any
kind of structor.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list