llvm-project/clang/test
serge_sans_paille 4a1a0690ad Support -fstack-clash-protection for x86
Implement protection against the stack clash attack [0] through inline stack
probing.

Probe stack allocation every PAGE_SIZE during frame lowering or dynamic
allocation to make sure the page guard, if any, is touched when touching the
stack, in a similar manner to GCC[1].

This extends the existing `probe-stack' mechanism with a special value `inline-asm'.
Technically the former uses function call before stack allocation while this
patch provides inlined stack probes and chunk allocation.

Only implemented for x86.

[0] https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt
[1] https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00556.html

This a recommit of 39f50da2a3 with correct option
flags set.

Differential Revision: https://reviews.llvm.org/D68720
2020-02-07 19:54:39 +01:00
..
ARCMT
AST [Concepts] Placeholder constraints and abbreviated templates 2020-01-23 19:39:43 +02:00
ASTMerge
Analysis [analyzer] Move fuchsia.Lock checker to alpha 2020-02-05 16:11:06 -08:00
CXX C++ DR2026: static storage duration variables are not zeroed before 2020-02-06 16:37:22 -08:00
ClangScanDeps [clang][clang-scan-deps] Aggregate the full dependency information. 2020-01-23 16:58:50 -08:00
CodeCompletion [clang][CodeComplete] Support for designated initializers 2020-01-28 16:34:15 +01:00
CodeGen Support -fstack-clash-protection for x86 2020-02-07 19:54:39 +01:00
CodeGenCUDA Separately track input and output denormal mode 2020-02-04 12:59:21 -05:00
CodeGenCXX [clang] Fix linkage of nested lambdas. 2020-02-07 13:24:21 -05:00
CodeGenCoroutines Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
CodeGenHIP Don't dump IR output from this test to stdout. 2020-01-16 19:19:45 -08:00
CodeGenObjC [ubsan] Omit return value check when return block is unreachable 2020-02-06 10:24:03 -08:00
CodeGenObjCXX Debug Info: Strengthen the synthesized-property-cleanup.mm test, NFC 2019-12-10 13:39:22 -08:00
CodeGenOpenCL Corrected clang amdgpu-features.cl test for 6d614a82a4 (AMDGPU MFMA built-ins) 2020-01-28 05:41:42 -05:00
CodeGenOpenCLCXX [OpenCL] Add ExtVectorElementExpr constant evaluation (PR42387) 2019-12-17 11:10:06 +00:00
Coverage
CoverageMapping
Driver Support -fstack-clash-protection for x86 2020-02-07 19:54:39 +01:00
FixIt Revert "[objc_direct] Small updates to help with adoption." 2020-01-30 18:21:25 -08:00
Format
Frontend [clang][test][NFC] Use more widely supported sanitizer for file dependency tests 2020-01-14 12:55:11 -08:00
Headers Revert "PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer." 2020-01-20 16:34:09 -08:00
Import
Index [OpenCL] Pretty print __private addr space 2019-12-27 13:42:07 +00:00
Integration
InterfaceStubs [clang][IFS][test] Temporary work around for in-process cc1 ASAN issues. 2020-01-21 22:56:20 -05:00
Layout
Lexer Detect source location overflow due includes 2020-01-24 23:56:47 +00:00
Misc [Sema] Remove a -Wrange warning from -Wall 2020-02-01 18:44:27 +01:00
Modules Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
OpenMP [OPENMP50]Add parsing/sema for acq_rel clause. 2020-02-07 09:21:10 -05:00
PCH Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
Parser PR44684: Look through parens and similar constructs when determining 2020-02-06 12:21:54 -08:00
Preprocessor [ARM][TargetParser] Improve handling of dependencies between target features 2020-02-05 16:07:51 +00:00
Profile
Refactor
Rewriter
Sema Fix test after test changes added in da3dc00 caused the test to break 2020-02-06 18:19:01 -08:00
SemaCUDA
SemaCXX C++ DR2026: static storage duration variables are not zeroed before 2020-02-06 16:37:22 -08:00
SemaObjC Revert "[objc_direct] Small updates to help with adoption." 2020-01-30 18:21:25 -08:00
SemaObjCXX Clean up and slightly generalize implementation of composite pointer 2020-01-10 16:12:00 -08:00
SemaOpenCL [OpenCL] Restrict addr space conversions in nested pointers 2020-02-07 12:04:35 +00:00
SemaOpenCLCXX [OpenCL] Restrict addr space conversions in nested pointers 2020-02-07 12:04:35 +00:00
SemaSYCL
SemaTemplate C++ DR2026: static storage duration variables are not zeroed before 2020-02-06 16:37:22 -08:00
TableGen
Templight
Tooling
Unit
VFS [VFS] More consistent support for Windows 2020-02-05 11:38:20 -08:00
clang-rename
.clang-format
CMakeLists.txt [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation 2020-01-13 10:40:18 -05:00
TestRunner.sh
cxx-sections.data
lit.cfg.py
lit.site.cfg.py.in build: reduce CMake handling for zlib 2020-01-02 11:19:12 -08:00
make_test_dirs.pl