r176544 - in /branches/x32/gcc: ChangeLog.x32 c...

hjl@gcc.gnu.org hjl@gcc.gnu.org
Wed Jul 20 23:10:00 GMT 2011


Author: hjl
Date: Wed Jul 20 23:10:27 2011
New Revision: 176544

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176544
Log:
Remove x32 branch patterns.

2011-07-20  H.J. Lu  <hongjiu.lu@intel.com>
	    Uros Bizjak  <ubizjak@gmail.com>
	    Richard Henderson  <rth@redhat.com>

	* config/i386/constraints.md (w): New.

	* config/i386/i386.c (ix86_output_addr_vec_elt): Check
	TARGET_LP64 instead of TARGET_64BIT for ASM_QUAD.

	* config/i386/i386.h (CASE_VECTOR_MODE): Check TARGET_LP64
	instead of TARGET_64BIT.

	* config/i386/i386.md (indirect_jump): Replace
	nonimmediate_operand with indirect_branch_operand.
	(*indirect_jump): Likewise.  Replace constraint "m" with "w".
	(tablejump): Replace nonimmediate_operand with
	indirect_branch_operand.  Convert operand 0 to Pmode for x32 if
	not PIC.
	(*tablejump_1): Replace nonimmediate_operand with
	indirect_branch_operand.  Replace constraint "m" with "w".
	(*call_vzeroupper): Replace constraint "m" with "w".
	(*call): Likewise.
	(*call_rex64_ms_sysv_vzeroupper): Likewise.
	(*call_rex64_ms_sysv): Likewise.
	(*call_value_vzeroupper): Likewise.
	(*call_value): Likewise.
	(*call_value_rex64_ms_sysv_vzeroupper): Likewise.
	(*call_value_rex64_ms_sysv): Likewise.

	* config/i386/predicates.md (indirect_branch_operand): New.
	(call_insn_operand): Support x32.

2011-07-19  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_output_addr_vec_elt): Don't output
	64bit value for labels for TARGET_X32.
	(ix86_output_addr_diff_elt): Check TARGET_64BIT instead of
	TARGET_LP64.

	* config/i386/i386.h (CASE_VECTOR_MODE): Check TARGET_LP64
	instead of TARGET_64BIT.

	* config/i386/i386.md (*indirect_jump_x32): Removed.
	(*call_vzeroupper_x32): Likewise.
	(*call_x32): Likewise.
	(*call_rex64_ms_sysv_vzeroupper_x32): Likewise.
	(*call_rex64_ms_sysv_x32): Likewise.
	(*call_value_vzeroupper_x32): Likewise.
	(*call_value_x32): Likewise.
	(*call_value_rex64_ms_sysv_vzeroupper_x32): Likewise.
	(*call_value_rex64_ms_sysv_x32): Likewise.

Modified:
    branches/x32/gcc/ChangeLog.x32
    branches/x32/gcc/config/i386/constraints.md
    branches/x32/gcc/config/i386/i386.c
    branches/x32/gcc/config/i386/i386.h
    branches/x32/gcc/config/i386/i386.md
    branches/x32/gcc/config/i386/predicates.md



More information about the Gcc-cvs mailing list