basic-block.h (EXECUTE_IF_SET_IN_SBITMAP): New macro.
* basic-block.h (EXECUTE_IF_SET_IN_SBITMAP): New macro. (sbitmap_free, sbitmap_vector_free): New macros. * output.h (rtl_dump_file): Declare. From-SVN: r22978
This commit is contained in:
parent
937e37cc6e
commit
a86d864c41
3 changed files with 47 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
Sat Oct 10 22:00:34 1998 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* basic-block.h (EXECUTE_IF_SET_IN_SBITMAP): New macro.
|
||||
(sbitmap_free, sbitmap_vector_free): New macros.
|
||||
* output.h (rtl_dump_file): Declare.
|
||||
|
||||
Sat Oct 10 17:01:42 1998 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* regmove.c (optimize_reg_copy_3): Honor TRULY_NOOP_TRUNCATION.
|
||||
|
|
|
@ -235,7 +235,41 @@ do { \
|
|||
(bitmap)->elms [(bitno) / SBITMAP_ELT_BITS] &= ~((SBITMAP_ELT_TYPE) 1 << (bitno) % SBITMAP_ELT_BITS); \
|
||||
} while (0)
|
||||
|
||||
extern void dump_sbitmap PROTO ((FILE *, sbitmap));
|
||||
/* Loop over all elements of SBITSET, starting with MIN. */
|
||||
#define EXECUTE_IF_SET_IN_SBITMAP(SBITMAP, MIN, N, CODE) \
|
||||
do { \
|
||||
unsigned int bit_num_ = (MIN) % (unsigned) SBITMAP_ELT_BITS; \
|
||||
unsigned int word_num_ = (MIN) / (unsigned) SBITMAP_ELT_BITS; \
|
||||
unsigned int size_ = (SBITMAP)->size; \
|
||||
SBITMAP_ELT_TYPE *ptr_ = (SBITMAP)->elms; \
|
||||
\
|
||||
while (word_num_ < size_) \
|
||||
{ \
|
||||
SBITMAP_ELT_TYPE word_ = ptr_[word_num_]; \
|
||||
if (word_ != 0) \
|
||||
{ \
|
||||
for (; bit_num_ < SBITMAP_ELT_BITS; ++bit_num_) \
|
||||
{ \
|
||||
SBITMAP_ELT_TYPE mask_ = (SBITMAP_ELT_TYPE)1 << bit_num_; \
|
||||
if ((word_ & mask_) != 0) \
|
||||
{ \
|
||||
word_ &= ~mask_; \
|
||||
(N) = word_num_ * SBITMAP_ELT_BITS + bit_num_; \
|
||||
CODE; \
|
||||
if (word_ == 0) \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
bit_num_ = 0; \
|
||||
word_num_++; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define sbitmap_free(map) free(map)
|
||||
#define sbitmap_vector_free(vec) free(vec)
|
||||
|
||||
extern void dump_sbitmap PROTO ((FILE *, sbitmap));
|
||||
extern void dump_sbitmap_vector PROTO ((FILE *, char *, char *,
|
||||
sbitmap *, int));
|
||||
extern sbitmap sbitmap_alloc PROTO ((int));
|
||||
|
|
|
@ -460,6 +460,12 @@ extern int sdb_begin_function_line;
|
|||
extern FILE *asm_out_file;
|
||||
#endif
|
||||
|
||||
/* Default file in which to dump debug output. */
|
||||
|
||||
#ifdef BUFSIZ
|
||||
extern FILE *rtl_dump_file;
|
||||
#endif
|
||||
|
||||
/* Decide whether DECL needs to be in a writable section. RELOC is the same
|
||||
as for SELECT_SECTION. */
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue