diff options
author | Rahul Joshi <rjoshi@nvidia.com> | 2024-09-04 14:46:48 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-04 14:46:48 -0700 |
commit | dcf0160bd61d150e7b94067fcd991b466a361b08 (patch) | |
tree | c4f1706420e268d68157e75f6a362a34928f97f3 /llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp | |
parent | dd754cd262222bcb489038ac791e4278d90697f0 (diff) | |
download | llvm-dcf0160bd61d150e7b94067fcd991b466a361b08.zip llvm-dcf0160bd61d150e7b94067fcd991b466a361b08.tar.gz llvm-dcf0160bd61d150e7b94067fcd991b466a361b08.tar.bz2 |
[TableGen] Optimize intrinsic info type signature encoding (#106809)
Change the "fixed encoding" table used for encoding intrinsic
type signature to use 16-bit encoding as opposed to 32-bit.
This results in both space and time improvements. For space,
the total static storage size (in bytes) of this info reduces by 50%:
- Current = 14193*4 (Fixed table) + 16058 + 3 (Long Table) = 72833
- New size = 14193*2 (Fixed table) + 19879 + 3 (Long Table) = 48268.
- Reduction = 50.9%
For time, with the added benchmark, we see a 7.3% speedup in
`GetIntrinsicInfoTableEntries` benchmark. Actual output of the
benchmark in included in the GitHub MR.
Diffstat (limited to 'llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp')
0 files changed, 0 insertions, 0 deletions