diff options
author | Doug Evans <dje@gnu.org> | 1994-06-15 07:42:17 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1994-06-15 07:42:17 +0000 |
commit | 4505c2363677092a5d45467ebff98d590d72fc50 (patch) | |
tree | 3f503a7d991fdcf58418f9a57cc5de04c5621c0c /gcc | |
parent | a3ae935a82ee25a9495de3824fb11b908518b242 (diff) | |
download | gcc-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.c | 10 | ||||
-rw-r--r-- | gcc/jump.c | 4 |
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"); @@ -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 |