[all-commits] [llvm/llvm-project] 8086f9: [ConstFold] Simplify a load's GEP operand through ...

aeubanks via All-commits all-commits at lists.llvm.org
Thu May 27 16:04:52 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8086f9d87ee81aacf829bdad94744a75cf692ebc
      https://github.com/llvm/llvm-project/commit/8086f9d87ee81aacf829bdad94744a75cf692ebc
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2021-05-27 (Thu, 27 May 2021)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    A llvm/test/Transforms/InstSimplify/ConstProp/gep-alias-gep-load.ll

  Log Message:
  -----------
  [ConstFold] Simplify a load's GEP operand through local aliases

MSVC-style RTTI produces loads through a GEP of a local alias which
itself is a GEP. Currently we aren't able to devirtualize any virtual
calls when MSVC RTTI is enabled.

This patch attempts to simplify a load's GEP operand by calling
SymbolicallyEvaluateGEP() with an option to look through local aliases.

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




More information about the All-commits mailing list