[SystemZ] Implement -fstack-clash-protection
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>
Tue, 21 Apr 2020 16:16:29 +0000 (18:16 +0200)
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>
Sat, 6 Jun 2020 16:38:36 +0000 (18:38 +0200)
commit515bfc66eaced830c03b2ec187bef0d8c4dc6915
tree5d271b8721bb9a5ce8381281e832e411eb8fd0a3
parent92cb0ce8f814cd39ef4598fe074534cb787a9e78
[SystemZ] Implement -fstack-clash-protection

Probing of allocated stack space is now done when this option is passed. The
purpose is to protect against the stack clash attack (see
https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt).

Review: Ulrich Weigand

Differential Revision: https://reviews.llvm.org/D78717
16 files changed:
clang/docs/ReleaseNotes.rst
clang/lib/Basic/Targets/SystemZ.h
clang/lib/Driver/ToolChains/Clang.cpp
clang/test/CodeGen/stack-clash-protection.c
clang/test/Driver/stack-clash-protection-02.c [new file with mode: 0644]
llvm/include/llvm/ADT/Triple.h
llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
llvm/lib/Target/SystemZ/SystemZFrameLowering.h
llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
llvm/lib/Target/SystemZ/SystemZISelLowering.h
llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
llvm/lib/Target/SystemZ/SystemZInstrInfo.h
llvm/lib/Target/SystemZ/SystemZInstrInfo.td
llvm/lib/Target/SystemZ/SystemZOperators.td
llvm/test/CodeGen/SystemZ/stack-clash-dynamic-alloca.ll [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/stack-clash-protection.ll [new file with mode: 0644]