Home

[stackprotector] Implement the sspstrong rules for stack layout.

Press ? to show keyboard shortcuts.
Committed
jmageeJan 31 2014, 5:36 PM
Differential Revision
D2546: [stack protector] Improved data layout rules, part 4
Parents
rL200600: Fix for failure to unwind Linux stack frames with call in final position.
Branches
Unknown
Tags
Unknown
Subscribers
None
Projects
None
Description

[stackprotector] Implement the sspstrong rules for stack layout.

This changes the PrologueEpilogInserter and LocalStackSlotAllocation passes to
follow the extended stack layout rules for sspstrong and sspreq.

The sspstrong layout rules are:

  1. Large arrays and structures containing large arrays (>= ssp-buffer-size)

are closest to the stack protector.

  1. Small arrays and structures containing small arrays (< ssp-buffer-size) are

2nd closest to the protector.

  1. Variables that have had their address taken are 3rd closest to the

protector.

Differential Revision: http://llvm-reviews.chandlerc.com/D2546

rL200601

llvm/trunk/docs/LangRef.rst

Loading...

llvm/trunk/lib/CodeGen/LocalStackSlotAllocation.cpp

Loading...

llvm/trunk/lib/CodeGen/PrologEpilogInserter.cpp

Loading...

llvm/trunk/test/CodeGen/ARM/ssp-data-layout.ll

Loading...

llvm/trunk/test/CodeGen/X86/ssp-data-layout.ll

Loading...

Add Comment