diff options
author | DJ Delorie <dj@redhat.com> | 2006-09-01 22:38:20 -0400 |
---|---|---|
committer | DJ Delorie <dj@gcc.gnu.org> | 2006-09-01 22:38:20 -0400 |
commit | 0166ff05ca0605e631452f1e504dad60d90f9e26 (patch) | |
tree | 2c0f6158f507bd70b6411b29d1995dc05773b846 /gcc/config/m32c/m32c-protos.h | |
parent | 3a79c9917c3e068844a8c57d837a304cd73d04bb (diff) | |
download | gcc-0166ff05ca0605e631452f1e504dad60d90f9e26.zip gcc-0166ff05ca0605e631452f1e504dad60d90f9e26.tar.gz gcc-0166ff05ca0605e631452f1e504dad60d90f9e26.tar.bz2 |
cond.md (cbranch<mode>4): Defer splitting until after reload.
* config/m32c/cond.md (cbranch<mode>4): Defer splitting until after reload.
(stzx_16): Likewise.
("stzx_24_<mode>"): Likewise.
("stzx_reversed_<mode>"): Likewise, and make mode-specific.
("cmp<mode>_op"): New.
(cmp<mode>): Change to expander; just save operands.
(b<code>_op): New.
(b<code>): Change to expander, emit compare here.
(s<code>_op): Change to use split and expander.
(s<code>_24_op): Likewise.
(s<code>_<mode>): New.
(s<code>_<mode>_24): New.
(movqicc_<code>_<mode): New.
(movhicc_<code>_<mode>): New.
(s<code>): New.
(s<code>_24): New.
* config/m32c/m32c.c (compare_op0, compare_op1): New.
(m32c_pend_compare): New.
(m32c_unpend_compare): New.
(m32c_expand_scc): New.
(m32c_expand_movcc): Emit the compare also.
* config/m32c/predicates.md (mra_nopp_operand): New.
From-SVN: r116653
Diffstat (limited to 'gcc/config/m32c/m32c-protos.h')
-rw-r--r-- | gcc/config/m32c/m32c-protos.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/config/m32c/m32c-protos.h b/gcc/config/m32c/m32c-protos.h index 6979da2..06bd007 100644 --- a/gcc/config/m32c/m32c-protos.h +++ b/gcc/config/m32c/m32c-protos.h @@ -46,6 +46,7 @@ void m32c_register_pragmas (void); int m32c_regno_ok_for_base_p (int); int m32c_trampoline_alignment (void); int m32c_trampoline_size (void); +void m32c_unpend_compare (void); #if defined(RTX_CODE) && defined(TREE_CODE) @@ -68,6 +69,7 @@ int m32c_expand_movmemhi (rtx *); int m32c_expand_movstr (rtx *); void m32c_expand_neg_mulpsi3 (rtx *); int m32c_expand_setmemhi (rtx *); +void m32c_expand_scc (int, rtx *); int m32c_extra_constraint_p (rtx, char, const char *); int m32c_extra_constraint_p2 (rtx, char, const char *); int m32c_hard_regno_nregs (int, MM); @@ -86,6 +88,7 @@ int m32c_mode_dependent_address (rtx); int m32c_modes_tieable_p (MM, MM); bool m32c_mov_ok (rtx *, MM); char * m32c_output_compare (rtx, rtx *); +void m32c_pend_compare (rtx *); int m32c_preferred_output_reload_class (rtx, int); int m32c_preferred_reload_class (rtx, int); int m32c_prepare_move (rtx *, MM); |