comparison gcc/ebitmap.h @ 55:77e2b8dfacca gcc-4.4.5

update it from 4.4.3 to 4.5.0
author ryoma <e075725@ie.u-ryukyu.ac.jp>
date Fri, 12 Feb 2010 23:39:51 +0900
parents a06113de4d67
children
comparison
equal deleted inserted replaced
52:c156f1bd5cd9 55:77e2b8dfacca
24 24
25 #define EBITMAP_ELT_BITS ((unsigned) HOST_BITS_PER_WIDEST_FAST_INT) 25 #define EBITMAP_ELT_BITS ((unsigned) HOST_BITS_PER_WIDEST_FAST_INT)
26 #define EBITMAP_ELT_TYPE unsigned HOST_WIDEST_FAST_INT 26 #define EBITMAP_ELT_TYPE unsigned HOST_WIDEST_FAST_INT
27 27
28 typedef struct ebitmap_def 28 typedef struct ebitmap_def
29 { 29 {
30 unsigned int n_elts; /* number of elements in the array. */ 30 unsigned int n_elts; /* number of elements in the array. */
31 sbitmap wordmask; /* wordmask saying which words are 31 sbitmap wordmask; /* wordmask saying which words are
32 nonzero. */ 32 nonzero. */
33 unsigned int numwords; /* number of nonzero words. */ 33 unsigned int numwords; /* number of nonzero words. */
34 unsigned int cacheindex; /* which word cache is. */ 34 unsigned int cacheindex; /* which word cache is. */
62 extern bool ebitmap_ior_and_compl_into (ebitmap, ebitmap, ebitmap); 62 extern bool ebitmap_ior_and_compl_into (ebitmap, ebitmap, ebitmap);
63 extern bool ebitmap_equal_p (ebitmap, ebitmap); 63 extern bool ebitmap_equal_p (ebitmap, ebitmap);
64 extern void ebitmap_clear (ebitmap); 64 extern void ebitmap_clear (ebitmap);
65 extern int ebitmap_last_set_bit (ebitmap); 65 extern int ebitmap_last_set_bit (ebitmap);
66 extern void debug_ebitmap (ebitmap); 66 extern void debug_ebitmap (ebitmap);
67 extern void dump_ebitmap (FILE *, ebitmap);
68 extern unsigned long ebitmap_popcount(ebitmap, unsigned long); 67 extern unsigned long ebitmap_popcount(ebitmap, unsigned long);
69 68
70 /* The iterator for ebitmap. */ 69 /* The iterator for ebitmap. */
71 typedef struct { 70 typedef struct {
72 /* The pointer to the first word of the bitmap. */ 71 /* The pointer to the first word of the bitmap. */
85 EBITMAP_ELT_TYPE word; 84 EBITMAP_ELT_TYPE word;
86 85
87 /* The word mask iterator. */ 86 /* The word mask iterator. */
88 sbitmap_iterator maskiter; 87 sbitmap_iterator maskiter;
89 } ebitmap_iterator; 88 } ebitmap_iterator;
90 89
91 static inline void 90 static inline void
92 ebitmap_iter_init (ebitmap_iterator *i, ebitmap bmp, unsigned int min) 91 ebitmap_iter_init (ebitmap_iterator *i, ebitmap bmp, unsigned int min)
93 { 92 {
94 sbitmap_iter_init (&i->maskiter, bmp->wordmask, 93 sbitmap_iter_init (&i->maskiter, bmp->wordmask,
95 min / EBITMAP_ELT_BITS); 94 min / EBITMAP_ELT_BITS);
96 i->size = bmp->numwords; 95 i->size = bmp->numwords;
97 if (i->size == 0) 96 if (i->size == 0)
98 { 97 {
99 i->ptr = NULL; 98 i->ptr = NULL;