[PATCH] D151638: [TRE] icmp does not escape an alloca

Joshua Cao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 29 00:42:58 PDT 2023


caojoshua added a comment.

In D151638#4378825 <https://reviews.llvm.org/D151638#4378825>, @nikic wrote:

> This should be implemented in CaptureTracking first and foremost. TRE can be adjusted afterwards, or preferably should use CaptureTracking as well, instead of doing its own, incorrect reimplementation.
>
> Just considering all icmps non-escaping is obviously wrong. The property you are looking for here is that if you have an icmp where both sides are at some offset of the same underlying object, then the icmp will only compare the offsets and not leak any bits of the pointer, and as such is not capturing.

Thanks for review. I don't understand how icmp's leak bits of a pointer. I asked this in https://discord.com/channels/636084430946959380/636732535434510338/1112644263029776414 as well. Could you take a look?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D151638/new/

https://reviews.llvm.org/D151638



More information about the llvm-commits mailing list