i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
authorJan Hubicka <jh@suse.cz>
Mon, 12 Mar 2001 14:18:57 +0000 (15:18 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Mon, 12 Mar 2001 14:18:57 +0000 (14:18 +0000)
commitd28362735b53e8015c8c92cde8f49d3c7e5cbe82
tree8328430b965143eb48a6d53239c6d4310adbef3a
parent6336e96f4e12b085de085299334bbef79afed23c
i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.

* i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
(MODES_TIEABLE_P): QImodes and DImodes are tiable on x86_64.
(HARD_REGNO_CALLER_SAVE_MODE): Save QImodes as QImodes for x86_64.
(STATIC_CHAIN_REGNUM): Set to r10 for x86_64.
(PIC_OFFSET_TABLE_REGNUM): Set to INVALID_REGNUM for x86_64.
(LIMIT_RELOAD_CLASS): Avoid limiting of QImodes on x86_64.
(SECONDARY_OUTPUT_RELOAD_CLASS): No need to QImodes.
(PUSH_ROUNDING): x86_64 rounds to 64bits.
(CONSTANT_ADDRESS_P): Accept CONST_DOUBLE.
(REGPARM_MAX): Set to 6 for x86_64.
(SSE_REGPARM_MAX): Set to 16 for x86_64.
* i386.c (hard_regno_mode_ok): QImodes can be in all general purpose
registers.

* (patterns that does use upper halves): Update constraints
'q' to 'Q' and 'r' to 'R'.
(cmpqi_ext_1): Disable for 64bit.
(cmpqi_ext_3_insn): Likewise.
(movqi_extzv_1): Likewsie.
(addqi_ext_1): Liekwsie
(testqi_ext_1): Liekwsie
(andqi_ext_1): Liekwsie
(xorqi_ext_1): Liekwsie
(cmpqi_ext_1_rex64): New.
(cmpqi_ext_3_insn_rex64): Likewise.
(movqi_extzv_1_rex64): Likewsie.
(addqi_ext_1_rex64): Liekwsie
(testqi_ext_1_rex64): Liekwsie
(andqi_ext_1_rex64): Liekwsie
(xorqi_ext_1_rex64): Liekwsie

From-SVN: r40411
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/i386.md