aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-06-04 00:45:44 +0000
committerRichard Stallman <rms@gnu.org>1993-06-04 00:45:44 +0000
commitdf6f4086b07f8ffe4cc6dd90cc21056d2cd54d86 (patch)
tree66e30638748e5d3f9c90fa6254b1746bc5942a1b
parent12194c388f00739381f3c75737275d6a2862cb37 (diff)
downloadgcc-df6f4086b07f8ffe4cc6dd90cc21056d2cd54d86.zip
gcc-df6f4086b07f8ffe4cc6dd90cc21056d2cd54d86.tar.gz
gcc-df6f4086b07f8ffe4cc6dd90cc21056d2cd54d86.tar.bz2
(num_sign_bit_copies): At end, return 1 if NONZERO has the high bit set.
From-SVN: r4627
-rw-r--r--gcc/combine.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 5ac961f..7aa5348 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -6801,7 +6801,7 @@ num_sign_bit_copies (x, mode)
return 1;
nonzero = nonzero_bits (x, mode);
- return (nonzero == GET_MODE_MASK (mode)
+ return (nonzero & ((HOST_WIDE_INT) 1 << (bitwidth - 1))
? 1 : bitwidth - floor_log2 (nonzero) - 1);
}