aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1995-01-25 04:14:56 +0000
committerDoug Evans <dje@gnu.org>1995-01-25 04:14:56 +0000
commit423933c298b2dd87ff3c0bf77ae1bba8a6ca715b (patch)
treea9272e2e7ebb3419e04c3aa8edc428a3abe419ff /gcc/expr.h
parentc4e0f0610e274d228b675c0f679c13db9875afbc (diff)
downloadgcc-423933c298b2dd87ff3c0bf77ae1bba8a6ca715b.zip
gcc-423933c298b2dd87ff3c0bf77ae1bba8a6ca715b.tar.gz
gcc-423933c298b2dd87ff3c0bf77ae1bba8a6ca715b.tar.bz2
(emit_conditional_move): Declare it.
(can_conditionally_move_p): Likewise. (movcc_gen_code): Likewise. From-SVN: r8798
Diffstat (limited to 'gcc/expr.h')
-rw-r--r--gcc/expr.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/expr.h b/gcc/expr.h
index 757ee63..aa235bd 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -460,6 +460,13 @@ extern rtxfun bcc_gen_fctn[NUM_RTX_CODE];
extern enum insn_code setcc_gen_code[NUM_RTX_CODE];
+#ifdef HAVE_conditional_move
+/* Indexed by the the machine mode, gives the insn code to make a conditional
+ move insn. */
+
+extern enum insn_code movcc_gen_code[NUM_MACHINE_MODES];
+#endif
+
/* This array records the insn_code of insns to perform block moves. */
extern enum insn_code movstr_optab[NUM_MACHINE_MODES];
@@ -517,6 +524,16 @@ extern void emit_float_lib_cmp PROTO((rtx, rtx, enum rtx_code));
/* Generate code to indirectly jump to a location given in the rtx LOC. */
extern void emit_indirect_jump PROTO((rtx));
+#ifdef HAVE_conditional_move
+/* Emit a conditional move operation. */
+rtx emit_conditional_move PROTO((rtx, enum rtx_code, rtx, rtx,
+ enum machine_mode, rtx, rtx,
+ enum machine_mode, int));
+
+/* Return non-zero if the conditional move is supported. */
+int can_conditionally_move_p PROTO((enum machine_mode mode));
+#endif
+
/* Create but don't emit one rtl instruction to add one rtx into another.
Modes must match; operands must meet the operation's predicates.
Likewise for subtraction and for just copying.