summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/bitmap.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6f4a44248ed..c3d26dc2c1c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * bitmap.c (bitmap_find_bit): Return early if we have the correct
+ element cached.
+
Tue May 21 10:51:54 CEST 2002 Jan Hubicka <jh@suse.cz>
* profile.c (gen_edge_profiler): Set alias set before the memory is
diff --git a/gcc/bitmap.c b/gcc/bitmap.c
index b735d1409d0..786689b4ad5 100644
--- a/gcc/bitmap.c
+++ b/gcc/bitmap.c
@@ -300,8 +300,9 @@ bitmap_find_bit (head, bit)
bitmap_element *element;
unsigned HOST_WIDE_INT indx = bit / BITMAP_ELEMENT_ALL_BITS;
- if (head->current == 0)
- return 0;
+ if (head->current == 0
+ || head->indx == indx)
+ return head->current;
if (head->indx > indx)
for (element = head->current;