[all-commits] [llvm/llvm-project] 1b8e0c: [BOLT] Never emit "large" functions (#115974)

Maksim Panchenko via All-commits all-commits at lists.llvm.org
Wed Nov 13 09:59:05 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1b8e0cf090a08b2c517eb2a3e101332d692063c2
      https://github.com/llvm/llvm-project/commit/1b8e0cf090a08b2c517eb2a3e101332d692063c2
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-11-13 (Wed, 13 Nov 2024)

  Changed paths:
    M bolt/include/bolt/Core/Exceptions.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp

  Log Message:
  -----------
  [BOLT] Never emit "large" functions (#115974)

"Large" functions are functions that are too big to fit into their
original slots after code modifications. CheckLargeFunctions pass is
designed to prevent such functions from emission. Extend this pass to
work with functions with constant islands.

Now that CheckLargeFunctions covers all functions, it guarantees that we
will never see such functions after code emission on all platforms
(previously it was guaranteed on x86 only). Hence, we can get rid of
RewriteInstance extensions that were meant to support "large" functions.



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