[PATCH] D19363: [SystemZ] [SSP] Add support for LOAD_STACK_GUARD.

Marcin Koƛcielnicki via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 21 06:34:18 PDT 2016


koriakin created this revision.
koriakin added a reviewer: uweigand.
koriakin added a subscriber: llvm-commits.
koriakin set the repository for this revision to rL LLVM.

This fixes PR22248 on s390x.  The previous attempt at this was D19101,
which was before LOAD_STACK_GUARD existed.  Compared to the previous
version, this always emits a rather ugly block of 4 instructions, involving
a thread pointer load that can't be shared with other potential users.
However, this is necessary for SSP - spilling the guard value (or thread
pointer used to load it) is counter to the goal, since it could be
overwritten along with the frame it protects.

Repository:
  rL LLVM

http://reviews.llvm.org/D19363

Files:
  lib/Target/SystemZ/SystemZISelLowering.h
  lib/Target/SystemZ/SystemZInstrInfo.cpp
  lib/Target/SystemZ/SystemZInstrInfo.h
  lib/Target/SystemZ/SystemZRegisterInfo.h
  test/CodeGen/SystemZ/stack-guard.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D19363.54494.patch
Type: text/x-patch
Size: 5058 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160421/e0a470a0/attachment.bin>


More information about the llvm-commits mailing list