[PATCH] D150009: [AArch64CompressJumpTables] Prevent compression when block alignment is bigger than function alignment.

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 5 16:18:21 PDT 2023


paulwalker-arm created this revision.
Herald added subscribers: hiraditya, kristof.beyls.
Herald added a project: All.
paulwalker-arm requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

AArch64CompressJumpTables assumes functions are perfectly aligned
when compared to other algnments within the function. It does this
so zero can be used as the function's entry address with all blocks
offseted from this.  However, when a block alignment is bigger than
its function's alignment accurate block offsets cannot be computed,
making the current compression algorithm unsafe.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D150009

Files:
  llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp
  llvm/test/CodeGen/AArch64/jump-table-compress.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D150009.520001.patch
Type: text/x-patch
Size: 3815 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230505/27778eb4/attachment.bin>


More information about the llvm-commits mailing list