[all-commits] [llvm/llvm-project] 85c526: [SCEV] Unify and optimize constant folding (NFC) (...

Nikita Popov via All-commits all-commits at lists.llvm.org
Fri Aug 2 00:55:24 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 85c5265feae82d8e26869adf4505b448b3a17534
      https://github.com/llvm/llvm-project/commit/85c5265feae82d8e26869adf4505b448b3a17534
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  [SCEV] Unify and optimize constant folding (NFC) (#101473)

Add a common constantFoldAndGroupOps() helper that takes care of
constant folding and grouping transforms that are common to all nary
ops. This moves the constant folding prior to grouping, which is more
efficient, and excludes any constant from the sort.

The constant folding has hooks for folding, identity constants and
absorber constants.

This gives a compile-time improvement for SCEV-heavy workloads like
lencod.



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