PR target/39118
commit73c5e2aae9a37b711ea6040f36147fbe28798da5
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 11 Feb 2009 11:43:24 +0000 (11 11:43 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 11 Feb 2009 11:43:24 +0000 (11 11:43 +0000)
treec424a6a795052d439c23fbac5081b3142dbb1ec6
parent69df273808162a9056d64aaa98a5aa33d9c54610
PR target/39118
* config/i386/i386.md (UNSPEC_MEMORY_BLOCKAGE): New constant.
(memory_blockage): New expander.
(*memory_blockage): New insn pattern.
* config/i386/i386.c (ix86_expand_prologue): Use memory_blockage
instead of general blockage at the end of function prologue when
frame pointer is used to access red zone area.  Do not emit blockage
when profiling, it is emitted in generic code.
(ix86_expand_epilogue): Emit memory_blockage at the beginning of
function epilogue when frame pointer is used to access red zone area.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144100 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.md