[all-commits] [llvm/llvm-project] c1b3e8: [LTO/WPD] Allow devirtualization to function alias...

Teresa Johnson via All-commits all-commits at lists.llvm.org
Thu Feb 23 14:04:39 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c1b3e888449045db6b57353b2b3ebbb56541fb6c
      https://github.com/llvm/llvm-project/commit/c1b3e888449045db6b57353b2b3ebbb56541fb6c
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2023-02-23 (Thu, 23 Feb 2023)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/test/ThinLTO/X86/devirt_function_alias2.ll

  Log Message:
  -----------
  [LTO/WPD] Allow devirtualization to function alias in vtable

Follow on to D144209 to support single implementation devirtualization
for Regular LTO when the vtable holds a function alias.

For now I have prevented other optimizations performed in regular LTO
that need to analyze the contents of the function target when the vtable
holds an alias, as I'm not sure they are always correct to perform in
that case.

Differential Revision: https://reviews.llvm.org/D144270




More information about the All-commits mailing list