diff options
author | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-29 13:48:40 +0000 |
---|---|---|
committer | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-29 13:48:40 +0000 |
commit | 1d96f528b5a9f296a1d6fbcdeb42cec1ff8dc32e (patch) | |
tree | c5de10fd2dd2a214db09002d032ac6d25d8bb75d /gcc/function.c | |
parent | ef2de86b841506cf0323e190bcce5fad866ae9f3 (diff) | |
download | gcc-1d96f528b5a9f296a1d6fbcdeb42cec1ff8dc32e.tar.gz |
PR target/47715
* config/i386/i386.md (*load_tp_x32): New.
(*load_tp_x32_zext): Ditto.
(*add_tp_x32): Ditto.
(*add_tp_x32_zext): Ditto.
(*load_tp_<mode>): Disable for TARGET_X32 targets.
(*add_tp_<mode>): Ditto.
* config/i386/i386.c (get_thread_pointer): Load thread pointer in
ptr_mode and convert to Pmode if needed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176924 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/function.c')
-rw-r--r-- | gcc/function.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/function.c b/gcc/function.c index c94680c76b7..8f8c96ffa85 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4570,9 +4570,14 @@ stack_protect_prologue (void) tree guard_decl = targetm.stack_protect_guard (); rtx x, y; + printf ("TESTx\n"); + x = expand_normal (crtl->stack_protect_guard); y = expand_normal (guard_decl); + debug_rtx (x); + debug_rtx (y); + /* Allow the target to copy from Y to X without leaking Y into a register. */ if (HAVE_stack_protect_set) @@ -4604,9 +4609,14 @@ stack_protect_epilogue (void) rtx label = gen_label_rtx (); rtx x, y, tmp; + printf ("TESTz\n"); + x = expand_normal (crtl->stack_protect_guard); y = expand_normal (guard_decl); + debug_rtx (x); + debug_rtx (y); + /* Allow the target to compare Y with X without leaking either into a register. */ switch (HAVE_stack_protect_test != 0) |