[PATCH] D122582: StackMap: Fix assertion on undef operands for anyregc

Denis Antrushin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 29 12:35:19 PDT 2022


dantrushin added a comment.



In D122582#3414852 <https://reviews.llvm.org/D122582#3414852>, @arsenm wrote:

> In D122582#3414700 <https://reviews.llvm.org/D122582#3414700>, @dantrushin wrote:
>
>> 0xFEFEFEFE is a special sentinel value which means dead pointer. Now you just passing garbage to GC. (Theoretically this might be OK, practically I don't think so)
>
> It seems to me like you are blessing undef registers with special semantics, which is not what undef is for. If the value was undefined, it's undefined. The undef marker just informs the register liveness tracking of this. It doesn't make sense to have a lowering pass try to fix up the undefined value to something to avoid a crash. Transforming this is basically creating a mini-sanitizer/hardening.

OK, what about non-callee saved register appearing in stackmap, which is not supported?


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

https://reviews.llvm.org/D122582



More information about the llvm-commits mailing list