This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc/gcc ChangeLog config/arm/arm.c config/arm/ ...


CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	rearnsha@gcc.gnu.org	2003-10-24 09:25:31

Modified files:
	gcc            : ChangeLog 
	gcc/config/arm : arm.c arm.h arm.md 

Log message:
	* arm.c (arm_rtx_costs_1, case TARGET_THUMB): Adjust costs for
	comparing a constant with small negative numbers and add costing
	for constants in conjunction with AND.
	(note_invalid_constants): Tidy previous change.
	(thumb_cmp_operand): Tidy.
	(thumb_cmpneg_operand): New function.
	* arm.h (CONDITIONAL_REGISTER_USAGE): Don't use HI regs if optimizing
	for size.
	(FIRST_LO_REGNUM, FIRST_HI_REGNUM, LAST_HI_REGNUM): Define.
	(PREDICATE_CODES): Add thumb_cmpneg_operand.
	* arm.md (cbranchsi4): Convert to define_expand.  Handle comparison
	with a negative constant.
	(cbranchsi4_insn): Matcher for cbranchsi4.
	(cbranchsi4_scratch): Similar, but a scratch is available for
	handling negative constants.
	(movsi_cbranchsi4): New pattern.
	(tstsi3_cbranch): Renamed from andsi3_cbranch_scratch, remove scratch
	and use the TST instruction.
	(andsi3_cbranch, orrsi3_cbranch, xorsi3_cbranch, cbranchne_decr1)
	(addsi3_cbranch, subsi3_cbranch): Ensure that register preferencing
	cannot see high regs or memory alternatives.
	(bicsi3_cbranch_scratch, bicsi3_cbranch): New patterns.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.1539&r2=2.1540
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.c.diff?cvsroot=gcc&r1=1.302&r2=1.303
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.h.diff?cvsroot=gcc&r1=1.209&r2=1.210
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.md.diff?cvsroot=gcc&r1=1.144&r2=1.145


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]