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/mmix/mmix.md config/m ...


CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	hp@gcc.gnu.org	2002-07-07 10:13:14

Modified files:
	gcc            : ChangeLog 
	gcc/config/mmix: mmix.md mmix.c mmix-protos.h mmix.h 

Log message:
	Emit MMIX function prologue and epilogue as rtl.
	* config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
	not unprototyped get_hard_reg_initial_val.
	("call_value", "nonlocal_goto_receiver"): Ditto.
	("return"): Make define_expand.  Move real insn to...
	("*expanded_return"): New pattern.
	("prologue", "epilogue"): New define_expands.
	* config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
	(struct machine_function): New member in_prologue.
	(FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
	(FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
	(MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
	(MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
	(REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
	(LOCAL_REGNO): Define.  Adjust comment.
	* config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
	Consider regs_ever_live[MMIX_rJ_REGNUM], not just
	leaf_function_p.
	(MMIX_OUTPUT_REGNO): Don't translate registers while outputting
	the prologue.
	(mmix_target_asm_function_prologue): Make static.  Just mark that
	the prologue is being emitted.  Move guts to...
	(mmix_expand_prologue): New function.  Adjust for emitting
	prologue as rtl.  For sizes, use HOST_WIDE_INT only.
	(mmix_target_asm_function_epilogue): Make static.  Simply emit a
	\n.  Move guts to...
	(mmix_expand_epilogue): New function.  Adjust for emitting
	epilogue as rtl.  For sizes, use HOST_WIDE_INT only.
	(mmix_target_asm_function_end_prologue): Mark that the prologue
	has ended.
	(TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
	(mmix_conditional_register_usage): Improve comments.
	(mmix_local_regno): New function.
	(mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
	* config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
	(mmix_expand_prologue, mmix_expand_epilogue): Ditto.
	(mmix_get_hard_reg_initial_val): Ditto.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.14792&r2=1.14793
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/mmix/mmix.md.diff?cvsroot=gcc&r1=1.14&r2=1.15
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/mmix/mmix.c.diff?cvsroot=gcc&r1=1.34&r2=1.35
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/mmix/mmix-protos.h.diff?cvsroot=gcc&r1=1.13&r2=1.14
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/mmix/mmix.h.diff?cvsroot=gcc&r1=1.35&r2=1.36


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