r142891 - in /trunk/gcc: ChangeLog builtins.c c...

jakub@gcc.gnu.org jakub@gcc.gnu.org
Mon Dec 22 23:34:00 GMT 2008


Author: jakub
Date: Mon Dec 22 23:34:07 2008
New Revision: 142891

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=142891
Log:
	* config/i386/i386.c (expand_setmem_via_rep_stos): Add ORIG_VALUE
	argument.  If ORIG_VALUE is const0_rtx and COUNT is constant,
	set MEM_SIZE on DESTMEM.
	(ix86_expand_setmem): Adjust callers.

	PR target/38488
	* expr.h (get_mem_align_offset): New prototype.
	* emit-rtl.c (get_mem_align_offset): New function.
	* config/i386/i386.c (expand_movmem_via_rep_mov): Set MEM_SIZE correctly.
	(expand_constant_movmem_prologue, expand_constant_setmem_prologue):
	New functions.
	(ix86_expand_movmem): Optimize if COUNT_EXP
	is constant, desired_align > align and dst & (desired_align - 1)
	is computable at compile time.
	(ix86_expand_setmem): Likewise.

	* builtins.c (get_memory_rtx): Try to derive MEM_ATTRS from not yet
	resolved SAVE_EXPR or POINTER_PLUS_EXPR.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/builtins.c
    trunk/gcc/config/i386/i386.c
    trunk/gcc/emit-rtl.c
    trunk/gcc/expr.h



More information about the Gcc-cvs mailing list