egcs/gcc ChangeLog combine.c emit-rtl.c rtl.h ...

hubicka@gcc.gnu.org hubicka@gcc.gnu.org
Mon Jun 4 07:52:00 GMT 2001


CVSROOT:	/cvs/gcc
Module name:	egcs
Changes by:	hubicka@gcc.gnu.org	2001-06-04 07:52:15

Modified files:
	gcc            : ChangeLog combine.c emit-rtl.c rtl.h rtlanal.c 
	                 simplify-rtx.c 

Log message:
	* simplify_rtx.c (simplify_subreg): Keep subregs on return values,
	check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
	in case register wasn't OK previously, accept it now; allow
	subregs of frame pointer if reload completed and frame pointer
	is not needed.
	
	* combine.c (sombine_simplify_rtx): Fix comment;
	use subreg_lowpart_offset instead of subreg_lowpart_p
	(gen_lowpart_for_combine): Use subreg_lowpart_offset.
	* rtl.h (subreg_lowpart_parts_p): Kill.
	(subreg_lowpart_offset, subreg_highpart_offset): Declare.
	* simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
	* emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
	(gen_lowpart_common): Likewise.
	(subreg_lowpart_p): Likewise.
	(subreg_lowpart_parts_p): Kill.
	(subreg_lowpart_offset, subreg_highpart_offset): New function.
	
	* emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
	to simplify SUBREG and REG.
	(gen_highpart): Use simplify_gen_subreg for all simplifications.
	
	* emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
	CONCAT specially.
	
	* rtlanal.c (replace_regs):  Use simplify_gen_subreg

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.10227&r2=1.10228
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/combine.c.diff?cvsroot=gcc&r1=1.206&r2=1.207
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/emit-rtl.c.diff?cvsroot=gcc&r1=1.177&r2=1.178
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/rtl.h.diff?cvsroot=gcc&r1=1.262&r2=1.263
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/rtlanal.c.diff?cvsroot=gcc&r1=1.96&r2=1.97
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/simplify-rtx.c.diff?cvsroot=gcc&r1=1.55&r2=1.56



More information about the Gcc-cvs mailing list