[all-commits] [llvm/llvm-project] 258c80: [Assignment Tracking][NFC] Avoid doing some work w...

Orlando Cazalet-Hyams via All-commits all-commits at lists.llvm.org
Thu Feb 23 08:16:31 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 258c806b41251f66043a7d8636deae1a649fe6cb
      https://github.com/llvm/llvm-project/commit/258c806b41251f66043a7d8636deae1a649fe6cb
  Author: OCHyams <orlando.hyams at sony.com>
  Date:   2023-02-23 (Thu, 23 Feb 2023)

  Changed paths:
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp

  Log Message:
  -----------
  [Assignment Tracking][NFC] Avoid doing some work when maps have same keys

Where the new checks have been added, `SymmetricDifference` - still being built
- contains entries for variables present in `A` and not in `B`.  If
`SymmetricDifference` is empty at this point it means the variables (map keys)
in `A` are a subset of those in `B`, so if `A` and `B` are the same size then
we know they're identical.

This reduces the number of instructions retired building some of the CTMark
projects in a ReleaseLTO-g configuration (geomean change -0.05% with the best
improvement being -0.24% for tramp3d-v4)

Reviewed By: StephenTozer

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




More information about the All-commits mailing list