[PATCH] D21424: StackColoring for SafeStack.

Evgeniy Stepanov via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 15 17:45:38 PDT 2016


eugenis created this revision.
eugenis added reviewers: pcc, chandlerc.
eugenis added a subscriber: llvm-commits.
eugenis set the repository for this revision to rL LLVM.

This is a fix for PR27842.

An IR-level implementation of stack coloring tailored to work with
SafeStack. It is a bit weaker than the MI implementation in that it
does not the "lifetime start at first access" logic. This can be
improved in the future.

This patch also replaces the naive implementation of stack frame
layout with a greedy algorithm that can split existing stack slots
and even fit small objects inside the alignment padding of other
objects.

Repository:
  rL LLVM

http://reviews.llvm.org/D21424

Files:
  lib/CodeGen/CMakeLists.txt
  lib/CodeGen/SafeStack.cpp
  lib/CodeGen/SafeStackColoring.cpp
  lib/CodeGen/SafeStackColoring.h
  lib/CodeGen/SafeStackLayout.cpp
  lib/CodeGen/SafeStackLayout.h
  test/Transforms/SafeStack/coloring.ll
  test/Transforms/SafeStack/coloring2.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21424.60939.patch
Type: text/x-patch
Size: 46916 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160616/093eab36/attachment.bin>


More information about the llvm-commits mailing list