[PATCH] D57215: [CodeExtractor] Clear function's assumption cache after extracting blocks from it
    Sergey Dmitriev via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Thu Jan 24 18:27:48 PST 2019
    
    
  
sdmitriev created this revision.
sdmitriev added a reviewer: hfinkel.
Herald added a subscriber: llvm-commits.
Assumption cache's self-updating mechanism does not correctly handle the case when blocks are extracted from the function by the CodeExtractor. As a result function's assumption cache may have stale references to the llvm.assume calls that were moved to the outlined function. This patch fixes this problem by clearing function’s assumption cache after extracting blocks from it which forces the cache to be regenerated.
Repository:
  rL LLVM
https://reviews.llvm.org/D57215
Files:
  include/llvm/Analysis/AssumptionCache.h
  include/llvm/Transforms/Utils/CodeExtractor.h
  lib/Analysis/AssumptionCache.cpp
  lib/Transforms/IPO/HotColdSplitting.cpp
  lib/Transforms/IPO/LoopExtractor.cpp
  lib/Transforms/IPO/PartialInlining.cpp
  lib/Transforms/Utils/CodeExtractor.cpp
  test/Transforms/CodeExtractor/extract-assume.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57215.183463.patch
Type: text/x-patch
Size: 18299 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190125/19714f5e/attachment.bin>
    
    
More information about the llvm-commits
mailing list