[PATCH] D49362: [ThinLTO] Internalize read only globals

Eugene Leviant via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 23 05:40:53 PDT 2018


evgeny777 updated this revision to Diff 170611.
evgeny777 added a comment.

- ReadOnly attribute's been moved to `GlobalVarSummary` and is calculated on analysis phase
- Added flag to `ValueInfo` which indicates "constantness" instead of using constant reference counter in `FunctionSummary`
- Fixed few issues including GV to GV references
- Fixed bitcode tests and added extra test cases


https://reviews.llvm.org/D49362

Files:
  include/llvm/IR/ModuleSummaryIndex.h
  include/llvm/Transforms/IPO/FunctionImport.h
  include/llvm/Transforms/Utils/FunctionImportUtils.h
  lib/Analysis/ModuleSummaryAnalysis.cpp
  lib/AsmParser/LLParser.cpp
  lib/Bitcode/Reader/BitcodeReader.cpp
  lib/Bitcode/Writer/BitcodeWriter.cpp
  lib/IR/ModuleSummaryIndex.cpp
  lib/LTO/LTO.cpp
  lib/LTO/ThinLTOCodeGenerator.cpp
  lib/Linker/IRMover.cpp
  lib/Transforms/IPO/FunctionImport.cpp
  lib/Transforms/Utils/FunctionImportUtils.cpp
  test/Bitcode/summary_version.ll
  test/Bitcode/thinlto-alias.ll
  test/Bitcode/thinlto-alias2.ll
  test/Bitcode/thinlto-function-summary-callgraph-cast.ll
  test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
  test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
  test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
  test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
  test/Bitcode/thinlto-function-summary-callgraph.ll
  test/Bitcode/thinlto-function-summary-refgraph.ll
  test/ThinLTO/X86/Inputs/index-const-prop-alias.ll
  test/ThinLTO/X86/Inputs/index-const-prop-comdat.ll
  test/ThinLTO/X86/Inputs/index-const-prop-define-g.ll
  test/ThinLTO/X86/Inputs/index-const-prop-full-lto.ll
  test/ThinLTO/X86/Inputs/index-const-prop-gvref.ll
  test/ThinLTO/X86/Inputs/index-const-prop-linkage.ll
  test/ThinLTO/X86/Inputs/index-const-prop.ll
  test/ThinLTO/X86/dot-dumper.ll
  test/ThinLTO/X86/globals-import-const-fold.ll
  test/ThinLTO/X86/index-const-prop-O0.ll
  test/ThinLTO/X86/index-const-prop-alias.ll
  test/ThinLTO/X86/index-const-prop-comdat.ll
  test/ThinLTO/X86/index-const-prop-dead.ll
  test/ThinLTO/X86/index-const-prop-full-lto.ll
  test/ThinLTO/X86/index-const-prop-gvref.ll
  test/ThinLTO/X86/index-const-prop-ldst.ll
  test/ThinLTO/X86/index-const-prop-linkage.ll
  test/ThinLTO/X86/index-const-prop.ll
  test/ThinLTO/X86/index-const-prop2.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49362.170611.patch
Type: text/x-patch
Size: 66045 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181023/a822d389/attachment.bin>


More information about the llvm-commits mailing list