]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/asan.h
cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb fields.
authorJakub Jelinek <jakub@redhat.com>
Thu, 28 Nov 2013 08:18:59 +0000 (09:18 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 28 Nov 2013 08:18:59 +0000 (09:18 +0100)
commite361382f655dcba3b6538d9157c6d378db57158b
treeb8e14dee616a6f5428fd7b804709a5da8b7d3073
parent8b5e12023b56dfc83c037053612b08f5ee7eac61
cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb fields.

* cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb
fields.
(expand_stack_vars): For -fsanitize=address, use (and set initially)
data->asan_base as base for vars and update asan_alignb.
(expand_used_vars): Initialize data.asan_base and data.asan_alignb.
Pass them to asan_emit_stack_protection.
* asan.c (asan_detect_stack_use_after_return): New variable.
(asan_emit_stack_protection): Add pbase and alignb arguments.
Implement use after return sanitization.
* asan.h (asan_emit_stack_protection): Adjust prototype.
(ASAN_STACK_MAGIC_USE_AFTER_RET, ASAN_STACK_RETIRED_MAGIC): Define.

From-SVN: r205476
gcc/ChangeLog
gcc/asan.c
gcc/asan.h
gcc/cfgexpand.c