Commit 08d4cc33 by Richard Henderson Committed by Richard Henderson

function.c (stack_protect_prologue): Don't bypass expand_expr for…

function.c (stack_protect_prologue): Don't bypass expand_expr for stack_protect_guard and guard_decl.

        * function.c (stack_protect_prologue): Don't bypass expand_expr
        for stack_protect_guard and guard_decl.
        (stack_protect_epilogue): Likewise.

From-SVN: r154168
parent 589520b6
2009-11-13 Richard Henderson <rth@redhat.com>
* function.c (stack_protect_prologue): Don't bypass expand_expr
for stack_protect_guard and guard_decl.
(stack_protect_epilogue): Likewise.
2009-11-13 Jan Hubicka <jh@suse.cz>
* ipa.c (function_and_variable_visibility): Clear COMDAT on functions
......@@ -4269,12 +4269,8 @@ stack_protect_prologue (void)
tree guard_decl = targetm.stack_protect_guard ();
rtx x, y;
/* Avoid expand_expr here, because we don't want guard_decl pulled
into registers unless absolutely necessary. And we know that
crtl->stack_protect_guard is a local stack slot, so this skips
all the fluff. */
x = validize_mem (DECL_RTL (crtl->stack_protect_guard));
y = validize_mem (DECL_RTL (guard_decl));
x = expand_normal (crtl->stack_protect_guard);
y = expand_normal (guard_decl);
/* Allow the target to copy from Y to X without leaking Y into a
register. */
......@@ -4307,12 +4303,8 @@ stack_protect_epilogue (void)
rtx label = gen_label_rtx ();
rtx x, y, tmp;
/* Avoid expand_expr here, because we don't want guard_decl pulled
into registers unless absolutely necessary. And we know that
crtl->stack_protect_guard is a local stack slot, so this skips
all the fluff. */
x = validize_mem (DECL_RTL (crtl->stack_protect_guard));
y = validize_mem (DECL_RTL (guard_decl));
x = expand_normal (crtl->stack_protect_guard);
y = expand_normal (guard_decl);
/* Allow the target to compare Y with X without leaking either into
a register. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment