[PATCH] D92865: [AArch64] Don't try to compress jump tables if there are any inline asm instructions.

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 8 10:17:01 PST 2020


aemerson created this revision.
aemerson added a reviewer: t.p.northover.
aemerson added a project: LLVM.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
aemerson requested review of this revision.

Inline asm can contain constructs like .bytes which may have arbitrary size. In some cases, this causes us to miscalculate the size of blocks and therefore offsets, causing us to incorrectly compress a JT.

To be safe, just bail out of the whole thing if we find any inline asm.

Fixes PR48255


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92865

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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92865.310263.patch
Type: text/x-patch
Size: 13584 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201208/a0adfefc/attachment.bin>


More information about the llvm-commits mailing list