[all-commits] [llvm/llvm-project] 7ac63f: Bump coalescing limit

Matthias Braun via All-commits all-commits at lists.llvm.org
Wed May 24 09:15:37 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7ac63f004ca6c4905201036647fcacfcbb1c7ade
      https://github.com/llvm/llvm-project/commit/7ac63f004ca6c4905201036647fcacfcbb1c7ade
  Author: Matthias Braun <matze at braunis.de>
  Date:   2023-05-24 (Wed, 24 May 2023)

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

  Log Message:
  -----------
  Bump coalescing limit

This bumps the "large-interval-freq-threshold" limit in the register
coalescer to 256. The limit was introduced in
https://reviews.llvm.org/D59143 without much justify for the particular
value "100", so I hope bumping it is ok.

This change is motivated by bad codegen for the popular crc32c
algorithm; the code is often based/copied from this implementation:
https://github.com/htot/crc32c/blob/master/crc32c/crc32intelc.cc which
uses a duffs-device pattern with 128 switch-cases. There are examples in
RocksDB (https://github.com/facebook/rocksdb/blob/main/util/crc32c.cc)
and Folly
(https://github.com/facebook/folly/blob/main/folly/hash/detail/Crc32cDetail.cpp)
which are important use cases for us.

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




More information about the All-commits mailing list