[PATCH] D98906: [X86] Improve lowering of the unrolled inline-asm probing

Andrea Di Biagio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 22 08:01:52 PDT 2021


andreadb added a comment.

Be careful about referencing stack locations below the red-zone.

The x86-64 ABI mandates a 128 bytes red zone. Your new instruction would effectively write a zero at a location below the red-zone.
That region of memory is not reserved, and should be considered volatile. For example: signals and interrupt handlers are allowed to modify it.

That's the reason why, for leaf functions, compilers always emit a SUB of RSP in the case of too big negative offsets (w.r.t. RSP).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D98906



More information about the llvm-commits mailing list