diff options
author | bernie <bernie@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-16 21:53:46 +0000 |
---|---|---|
committer | bernie <bernie@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-16 21:53:46 +0000 |
commit | 0c4bc85aa8a944bf28591a5c41a6ffb46ea7c4b7 (patch) | |
tree | 43559396a2e98ef9733950984ee8c75db769667c /gcc/config/m68k/m68k-protos.h | |
parent | eaae3b7592d5ecb2b2d6def2f85573fe41bb71c5 (diff) | |
download | gcc-0c4bc85aa8a944bf28591a5c41a6ffb46ea7c4b7.tar.gz |
* config/m68k/m68k.md (movsi_cfv4): New pattern to allow mov3q.
(movsi_cf): Make named, don't match TARGET_CFV4.
(pushexthisi_const): Use mov3q if possible.
(extendhisi2, cvf4_extendhisi2): Split extendhisi2 pattern
to special case mvz.w for ColdFire V4.
(extendqisi2, cvf4_extendqisi2): Split extendhisi2 pattern
to special case mvz.b for ColdFire V4.
(udivmodhi4, divmodhi4): Use mvz to zero extend arg for
divide.
(iorsi3, xorsi3, andsi3): Use bitfield instructions if possible.
* config/m68k/m68k.c(valid_mov3q_const): New function.
(const_method): SWAP is valid for ColdFire.
(MULL_COST, MULW_COST): Fix costs for ColdFire V3/V4.
* config/m68k/m68k-protos.h (valid_mov3q_const): Prototype here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83266 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68k/m68k-protos.h')
-rw-r--r-- | gcc/config/m68k/m68k-protos.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/m68k/m68k-protos.h b/gcc/config/m68k/m68k-protos.h index 47afcb3762c..73810d72f82 100644 --- a/gcc/config/m68k/m68k-protos.h +++ b/gcc/config/m68k/m68k-protos.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Sun 68000/68020 version. - Copyright (C) 2000, 2002 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -23,6 +23,7 @@ Boston, MA 02111-1307, USA. */ #ifdef RTX_CODE extern HOST_WIDE_INT m68k_initial_elimination_offset (int from, int to); extern const char *output_move_const_into_data_reg (rtx *); +extern int valid_mov3q_const (rtx); extern const char *output_move_simode_const (rtx *); extern const char *output_move_simode (rtx *); extern const char *output_move_himode (rtx *); |