aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1994-06-15 07:42:17 +0000
committerDoug Evans <dje@gnu.org>1994-06-15 07:42:17 +0000
commit4505c2363677092a5d45467ebff98d590d72fc50 (patch)
tree3f503a7d991fdcf58418f9a57cc5de04c5621c0c /gcc
parenta3ae935a82ee25a9495de3824fb11b908518b242 (diff)
downloadgcc-4505c2363677092a5d45467ebff98d590d72fc50.zip
gcc-4505c2363677092a5d45467ebff98d590d72fc50.tar.gz
gcc-4505c2363677092a5d45467ebff98d590d72fc50.tar.bz2
genconfig.c (main): Allow targets to override HAVE_conditional_move.
* genconfig.c (main): Allow targets to override HAVE_conditional_move. * jump.c (jump_optimize): Use it at run-time. From-SVN: r7482
Diffstat (limited to 'gcc')
-rw-r--r--gcc/genconfig.c10
-rw-r--r--gcc/jump.c4
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/genconfig.c b/gcc/genconfig.c
index da230f1..f1585c6 100644
--- a/gcc/genconfig.c
+++ b/gcc/genconfig.c
@@ -343,7 +343,15 @@ from the machine description file `md'. */\n\n");
printf ("#define HAVE_cc0\n");
if (have_cmove_flag)
- printf ("#define HAVE_conditional_move\n");
+ {
+ /* ??? The #ifndef/#endif is a hack for targets like sparc where
+ conditional moves don't exist for all versions of the
+ architecture. This won't be needed after conditional move support
+ has been clean up. */
+ printf ("#ifndef HAVE_conditional_move\n");
+ printf ("#define HAVE_conditional_move 1\n");
+ printf ("#endif\n");
+ }
if (have_lo_sum_flag)
printf ("#define HAVE_lo_sum\n");
diff --git a/gcc/jump.c b/gcc/jump.c
index b8eaf11..f21f085 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -1038,7 +1038,7 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan)
((BRANCH_COST >= 2
&& temp2 == const0_rtx)
#ifdef HAVE_conditional_move
- || 1
+ || HAVE_conditional_move
#endif
|| BRANCH_COST >= 3)))
/* INSN must either branch to the insn after TEMP or the insn
@@ -1068,7 +1068,7 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan)
&& (reversep = can_reverse_comparison_p (temp4,
insn)))))
#ifdef HAVE_conditional_move
- || 1
+ || HAVE_conditional_move
#endif
|| BRANCH_COST >= 3)
#ifdef HAVE_cc0