[all-commits] [llvm/llvm-project] d3fb41: [CGData] llvm-cgdata (#89884)
Kyungwoo Lee via All-commits
all-commits at lists.llvm.org
Mon Jul 22 18:26:12 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d3fb41dddc11b0ebc338a3b9e6a5ab7288ff7d1d
https://github.com/llvm/llvm-project/commit/d3fb41dddc11b0ebc338a3b9e6a5ab7288ff7d1d
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
A llvm/include/llvm/CodeGenData/CodeGenData.h
A llvm/include/llvm/CodeGenData/CodeGenData.inc
A llvm/include/llvm/CodeGenData/CodeGenDataReader.h
A llvm/include/llvm/CodeGenData/CodeGenDataWriter.h
M llvm/lib/CodeGenData/CMakeLists.txt
A llvm/lib/CodeGenData/CodeGenData.cpp
A llvm/lib/CodeGenData/CodeGenDataReader.cpp
A llvm/lib/CodeGenData/CodeGenDataWriter.cpp
M llvm/test/CMakeLists.txt
M llvm/test/lit.cfg.py
A llvm/test/tools/llvm-cgdata/dump.test
A llvm/test/tools/llvm-cgdata/empty.test
A llvm/test/tools/llvm-cgdata/error.test
A llvm/test/tools/llvm-cgdata/merge-archive.test
A llvm/test/tools/llvm-cgdata/merge-concat.test
A llvm/test/tools/llvm-cgdata/merge-double.test
A llvm/test/tools/llvm-cgdata/merge-single.test
A llvm/test/tools/llvm-cgdata/show.test
A llvm/tools/llvm-cgdata/CMakeLists.txt
A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
Log Message:
-----------
[CGData] llvm-cgdata (#89884)
The llvm-cgdata tool has been introduced to handle reading and writing
of codegen data. This data includes an optimistic codegen summary that
can be utilized to enhance subsequent codegen. Currently, the tool
supports saving and restoring the outlined hash tree, facilitating
machine function outlining across modules. Additional codegen summaries
can be incorporated into separate sections as required. This patch
primarily establishes basic support for the reader and writer, similar
to llvm-profdata.
The high-level operations of llvm-cgdata are as follows:
1. It reads local raw codegen data from a custom section (for example,
__llvm_outline) embedded in native binary files
2. It merges local raw codegen data into an indexed codegen data,
complete with a suitable header.
3. It handles reading and writing of the indexed codegen data into a
standalone file.
This depends on https://github.com/llvm/llvm-project/pull/89792.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.
---------
Co-authored-by: Kyungwoo Lee <kyulee at fb.com>
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