[all-commits] [llvm/llvm-project] 220f6e: [SimplifyCFG] Ignore ephemeral values when countin...
    Teresa Johnson via All-commits 
    all-commits at lists.llvm.org
       
    Sun May  9 19:09:00 PDT 2021
    
    
  
  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 220f6e5271f2e6b39bf4e083c03cd3f91bb43685
      https://github.com/llvm/llvm-project/commit/220f6e5271f2e6b39bf4e083c03cd3f91bb43685
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2021-05-09 (Sun, 09 May 2021)
  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/unprofitable-pr.ll
  Log Message:
  -----------
  [SimplifyCFG] Ignore ephemeral values when counting insts for threading
Ignore ephemeral values (only feeding llvm.assume intrinsics) when
computing the instruction count to decide if a block is small enough for
threading. This is similar to the handling of these values in the
InlineCost computation. These instructions will eventually be removed
and shouldn't count against code size (similar to the existing ignoring
of phis).
Without this change, when enabling -fwhole-program-vtables, which causes
type test / assume sequences to be inserted by clang, we can get
different threading decisions. In particular, when building with
instrumentation FDO it can affect the optimizations decisions before FDO
matching, leading to some mismatches.
Differential Revision: https://reviews.llvm.org/D101494
    
    
More information about the All-commits
mailing list