diff options
author | Denis Chertykov <denisc@overta.ru> | 2000-11-06 11:39:54 +0300 |
---|---|---|
committer | Denis Chertykov <denisc@gcc.gnu.org> | 2000-11-06 11:39:54 +0300 |
commit | 1cf7847fed4624383e4f1e7a0e0021f553d0c151 (patch) | |
tree | c68bcda897f4f0eb718da6a00457202977669dc9 /gcc/expmed.c | |
parent | 099a51500cccdff68d8dfeec726f29b60ad1d546 (diff) | |
download | gcc-1cf7847fed4624383e4f1e7a0e0021f553d0c151.zip gcc-1cf7847fed4624383e4f1e7a0e0021f553d0c151.tar.gz gcc-1cf7847fed4624383e4f1e7a0e0021f553d0c151.tar.bz2 |
expmed.c (expand_divmod): For signed divide by 2, prefer a branch and fewer shifts if branches are very cheap.
* expmed.c (expand_divmod): For signed divide by 2, prefer
a branch and fewer shifts if branches are very cheap.
From-SVN: r37270
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r-- | gcc/expmed.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c index 254d052..012a68e 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -3258,7 +3258,7 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp) else if (EXACT_POWER_OF_2_OR_ZERO_P (abs_d)) { lgup = floor_log2 (abs_d); - if (abs_d != 2 && BRANCH_COST < 3) + if (BRANCH_COST < 1 || (abs_d != 2 && BRANCH_COST < 3)) { rtx label = gen_label_rtx (); rtx t1; |