[PATCH] D18632: Faster stack-protector for Android/AArch64.

Evgeniy Stepanov via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 30 16:32:53 PDT 2016


eugenis created this revision.
eugenis added reviewers: echristo, danalbert.
eugenis added subscribers: llvm-commits, pcc.
eugenis set the repository for this revision to rL LLVM.
Herald added subscribers: srhines, danalbert, tberghammer, rengolin, aemerson.

Bionic has a defined thread-local location for the stack protector
cookie. Emit a direct load instead of going through __stack_chk_guard.

The current signature of getStackCookieLocation (returning addressspace + offset) is very x86 specific; let the function generate arbitrary IR for the cookie access instead. This is the same way getSafeStackPointerLocation works.

Repository:
  rL LLVM

http://reviews.llvm.org/D18632

Files:
  include/llvm/Target/TargetLowering.h
  lib/CodeGen/StackProtector.cpp
  lib/Target/AArch64/AArch64ISelLowering.cpp
  lib/Target/AArch64/AArch64ISelLowering.h
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86ISelLowering.h
  test/CodeGen/AArch64/stack-protector-target.ll
  test/CodeGen/X86/stack-protector-target.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18632.52149.patch
Type: text/x-patch
Size: 8727 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160330/5601ea43/attachment.bin>


More information about the llvm-commits mailing list