diff options
author | Simon Pilgrim <RKSimon@users.noreply.github.com> | 2024-02-02 11:28:58 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-02 11:28:58 +0000 |
commit | b5d35feacb7246573c6a4ab2bddc4919a4228ed5 (patch) | |
tree | 2c99f1f956d20d624f85c226e0cf8f3cf03e0670 /llvm/lib/ProfileData/Coverage/CoverageMapping.cpp | |
parent | 2e669ff59ebb096d67d02ec51dbb7050dc5e2235 (diff) | |
download | llvm-b5d35feacb7246573c6a4ab2bddc4919a4228ed5.zip llvm-b5d35feacb7246573c6a4ab2bddc4919a4228ed5.tar.gz llvm-b5d35feacb7246573c6a4ab2bddc4919a4228ed5.tar.bz2 |
[X86] X86FixupVectorConstants - load+sign-extend vector constants that can be stored in a truncated form (#79815)
Reduce the size of the vector constant by storing it in the constant pool in a truncated form, and sign-extend it as part of the load.
I've extended the existing FixupConstant functionality to support these sext constant rebuilds - we still select the smallest stored constant entry and prefer vzload/broadcast/vextload for same bitwidth to avoid domain flips.
I intend to add the matching load+zero-extend handling in a future PR, but that requires some alterations to the existing MC shuffle comments handling first.
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMapping.cpp')
0 files changed, 0 insertions, 0 deletions