http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60077
--- Comment #4 from Jan Hubicka <hubicka at gcc dot gnu.org> --- Author: hubicka Date: Fri Feb 7 02:11:27 2014 New Revision: 207587 URL: http://gcc.gnu.org/viewcvs?rev=207587&root=gcc&view=rev Log: PR target/60077 * expr.c (emit_move_resolve_push): Export; be bit more selective on when to clear alias set. * expr.h (emit_move_resolve_push): Declare. * function.h (struct function): Add tail_call_marked. * tree-tailcall.c (optimize_tail_call): Set tail_call_marked. * config/i386/i386-protos.h (ix86_expand_push): Remove. * config/i386/i386.md (TImode move expander): De not call ix86_expand_push. (FP push expanders): Preserve memory attributes. * config/i386/sse.md (push<mode>1): Remove. * config/i386/i386.c (ix86_expand_vector_move): Handle push operation. (ix86_expand_push): Remove. * config/i386/mmx.md (push<mode>1): Remove. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386-protos.h trunk/gcc/config/i386/i386.c trunk/gcc/config/i386/i386.md trunk/gcc/config/i386/mmx.md trunk/gcc/config/i386/sse.md trunk/gcc/expr.c trunk/gcc/expr.h trunk/gcc/function.h trunk/gcc/tree-tailcall.c