r114709 - in /branches/csl/coldfire-4_1: Change...

rsandifo@gcc.gnu.org rsandifo@gcc.gnu.org
Fri Jun 16 07:56:00 GMT 2006


Author: rsandifo
Date: Fri Jun 16 07:56:56 2006
New Revision: 114709

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114709
Log:
gcc/
	* config/m68k/predicates.md (call_operand): Define.
	* config/m68k/m68k.md (call): Remove SYMBOL_REF_FLAG handilng.
	Call m68k_legitimize_call_address.  Replace the separate flag_pic
	and !flag_pic define_insns with a unified pattern.  Make the
	target operand match the address inside the MEM rather than
	the MEM itself.  Provide two alternatives, one for direct jumps
	and one for indirect jumps.  Use output_call.
	(call_value): Likewise, but copy operand 1 to operand 0 before
	invoking output_call.
	* config/m68k/m68k-protos.h (m68k_output_pic_call): Delete.
	(output_call): Declare.
	(m68k_legitimize_call_address): Declare.
	* config/m68k/m68k.c (m68k_symbolic_call): New variable.
	(m68k_symbolic_jump): Likewise.
	(override_options): Initialize m68k_symbolic_call and
	m68k_symbolic_jump.  Only set function_no_cse for PIC
	if symbolic calls and jumps are supported.
	(m68k_output_pic_call): Delete.
	(m68k_legitimize_call_address): New function.
	(m68k_legitimate_address_p): Remove SYMBOL_REF_FLAG handling.
	(output_call): New function.
	(m68k_output_mi_thunk): Change operand 0 of the call from a
	memory reference to an address.  Use mips_symbolic_jump if
	non-null, otherwise load the address from the GOT.
	* config/m68k/m68k.h (EXTRA_CONSTRAINT): Add a 'W' constraint.
	Remove superfluous brackets.
	(m68k_symbolic_call): Declare.
	(m68k_symbolic_jump): Declare.

Modified:
    branches/csl/coldfire-4_1/ChangeLog.csl
    branches/csl/coldfire-4_1/gcc/config/m68k/m68k-protos.h
    branches/csl/coldfire-4_1/gcc/config/m68k/m68k.c
    branches/csl/coldfire-4_1/gcc/config/m68k/m68k.h
    branches/csl/coldfire-4_1/gcc/config/m68k/m68k.md
    branches/csl/coldfire-4_1/gcc/config/m68k/predicates.md



More information about the Gcc-cvs mailing list