adds stack probing instruction sequence for dynamic stack allocations, VLA's and constant arrays to protect against stack clash attacks.
Depending on the size of the stack allocation, various probing sequences are generated:
- straight line sequence of subtracts and stores
- A loop allocating and probing one page size per iteration, plus a single probe to deal with the remainder.
- A loop which moves the SP down to the target value held in a register, used when the allocation size is not known at compile-time
reference: https://reviews.llvm.org/D96004
Why 1024?