[all-commits] [llvm/llvm-project] a51f4a: [HCS] Externd to outline overlapping sub/super col...

Shimin Cui via All-commits all-commits at lists.llvm.org
Thu Feb 22 09:04:20 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a51f4afc5aec8145091fead1d68c81e7d210fc0d
      https://github.com/llvm/llvm-project/commit/a51f4afc5aec8145091fead1d68c81e7d210fc0d
  Author: Shimin Cui <scui at ca.ibm.com>
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/test/Transforms/HotColdSplit/assumption-cache-invalidation.ll
    M llvm/test/Transforms/HotColdSplit/eh-pads.ll
    M llvm/test/Transforms/HotColdSplit/outline-disjoint-diamonds.ll
    A llvm/test/Transforms/HotColdSplit/outline-inner-region.ll
    A llvm/test/Transforms/HotColdSplit/outline-outer-region.ll

  Log Message:
  -----------
  [HCS] Externd to outline overlapping sub/super cold regions (#80732)

Currently, with hot cold splitting, when a cold region is identified, it
is added to the region list of ColdBlocks. Then when another cold region
(B) identified overlaps with a ColdBlocks region (A) already added to
the list, the region B is not added to the list because of the
overlapping with region A. The splitting analysis is performed, and the
region A may not get split, for example, if it’s considered too
expansive. This is to improve the handling the overlapping case when the
region A is not considered good for splitting, while the region B is
good for splitting.
 
The change is to move the cold region splitting analysis earlier to
allow more cold region splitting. If an identified region cannot be
split, it will not be added to the candidate list of ColdBlocks for
overlapping check.



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