[all-commits] [llvm/llvm-project] 4e6963: [StructuralHash] Refactor
Kyungwoo Lee via All-commits
all-commits at lists.llvm.org
Thu Oct 17 16:53:07 PDT 2024
Branch: refs/heads/users/kyulee-com/cgdata
Home: https://github.com/llvm/llvm-project
Commit: 4e696344bc28177a9805f656ea4864a5e4e5eb05
https://github.com/llvm/llvm-project/commit/4e696344bc28177a9805f656ea4864a5e4e5eb05
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-17 (Thu, 17 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/StructuralHash.h
M llvm/lib/IR/StructuralHash.cpp
M llvm/test/Transforms/MergeFunc/call-and-invoke-with-ranges.ll
Log Message:
-----------
[StructuralHash] Refactor
- Use stable_hash instead of uint64_t
- Rename update* to hash* functions. They compute stable_hash locally
and return it.
Commit: 6f6b623332fc3c71a98307eb1ca643f7ce9d32c3
https://github.com/llvm/llvm-project/commit/6f6b623332fc3c71a98307eb1ca643f7ce9d32c3
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-17 (Thu, 17 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/StructuralHash.h
M llvm/lib/IR/StructuralHash.cpp
M llvm/unittests/IR/StructuralHashTest.cpp
Log Message:
-----------
[StructuralHash] Support Differences
This comutes a structural hash while allowing for selective ignoring of
certain operands based on a custom function that is provided.
Instead of a single hash value, it now returns FunctionHashInfo which
includes a hash value, an instruction mapping, and a map to track the
operand location and its corresponding hash value that is ignored.
Commit: 314599870b9136c7b558de1dd996b87101c7372d
https://github.com/llvm/llvm-project/commit/314599870b9136c7b558de1dd996b87101c7372d
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-17 (Thu, 17 Oct 2024)
Changed paths:
A llvm/include/llvm/CGData/StableFunctionMap.h
A llvm/include/llvm/CGData/StableFunctionMapRecord.h
M llvm/lib/CGData/CMakeLists.txt
A llvm/lib/CGData/StableFunctionMap.cpp
A llvm/lib/CGData/StableFunctionMapRecord.cpp
M llvm/unittests/CGData/CMakeLists.txt
A llvm/unittests/CGData/StableFunctionMapRecordTest.cpp
A llvm/unittests/CGData/StableFunctionMapTest.cpp
Log Message:
-----------
[CGData] Stable Function Map
These define the main data structures to represent stable functions and group
similar functions in a function map.
Serialization is supported in a binary or yaml form.
Commit: b6007c49b12c81f2381690981afffe9e3dec967d
https://github.com/llvm/llvm-project/commit/b6007c49b12c81f2381690981afffe9e3dec967d
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-17 (Thu, 17 Oct 2024)
Changed paths:
M lld/test/MachO/cgdata-generate.s
M llvm/docs/CommandGuide/llvm-cgdata.rst
M llvm/include/llvm/CGData/CodeGenData.h
M llvm/include/llvm/CGData/CodeGenData.inc
M llvm/include/llvm/CGData/CodeGenDataReader.h
M llvm/include/llvm/CGData/CodeGenDataWriter.h
M llvm/lib/CGData/CodeGenData.cpp
M llvm/lib/CGData/CodeGenDataReader.cpp
M llvm/lib/CGData/CodeGenDataWriter.cpp
M llvm/test/tools/llvm-cgdata/empty.test
M llvm/test/tools/llvm-cgdata/error.test
R llvm/test/tools/llvm-cgdata/merge-archive.test
A llvm/test/tools/llvm-cgdata/merge-combined-funcmap-hashtree.test
R llvm/test/tools/llvm-cgdata/merge-concat.test
R llvm/test/tools/llvm-cgdata/merge-double.test
A llvm/test/tools/llvm-cgdata/merge-funcmap-archive.test
A llvm/test/tools/llvm-cgdata/merge-funcmap-concat.test
A llvm/test/tools/llvm-cgdata/merge-funcmap-double.test
A llvm/test/tools/llvm-cgdata/merge-funcmap-single.test
A llvm/test/tools/llvm-cgdata/merge-hashtree-archive.test
A llvm/test/tools/llvm-cgdata/merge-hashtree-concat.test
A llvm/test/tools/llvm-cgdata/merge-hashtree-double.test
A llvm/test/tools/llvm-cgdata/merge-hashtree-single.test
R llvm/test/tools/llvm-cgdata/merge-single.test
M llvm/tools/llvm-cgdata/llvm-cgdata.cpp
Log Message:
-----------
[CGData][llvm-cgdata] Support for stable function map
This introduces a new cgdata format for stable function maps.
The raw data is embedded in the __llvm_merge section during compile time.
This data can be read and merged using the llvm-cgdata tool, into an indexed cgdata file. Consequently, the tool is now capable of handling either outlined hash trees, stable function maps, or both, as they are orthogonal.
Compare: https://github.com/llvm/llvm-project/compare/09f1ec773086...b6007c49b12c
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