aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1997-06-06 21:14:24 +0000
committerDoug Evans <dje@gnu.org>1997-06-06 21:14:24 +0000
commitaf089bd1d0b61d8343c1f1e6b4ca26f5dc721950 (patch)
tree69276880248cc4a73450d333844c685a3ec42cb6
parenta86202361ec068a3bd7c8614e5178a189e217cf7 (diff)
downloadgcc-af089bd1d0b61d8343c1f1e6b4ca26f5dc721950.zip
gcc-af089bd1d0b61d8343c1f1e6b4ca26f5dc721950.tar.gz
gcc-af089bd1d0b61d8343c1f1e6b4ca26f5dc721950.tar.bz2
(REG_SET_TO_HARD_REG_SET): Fix typo.
(EXECUTE_IF_SET_IN_REG_SET): Fix setting of scan_rs_. (EXECUTE_IF_SET_AND_RESET_IN_REG_SET): Likewise. (EXECUTE_IF_AND_IN_REG_SET): Likewise. From-SVN: r14165
-rw-r--r--gcc/basic-block.h24
1 files changed, 12 insertions, 12 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index ce38672..2aa092a 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -1,5 +1,5 @@
/* Define control and data flow tables, and regsets.
- Copyright (C) 1987 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1997 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -117,7 +117,7 @@ do { \
do { \
int i_; \
CLEAR_HARD_REG_SET (TO); \
- for (i_ = 0; i < FIRST_PSEUDO_REGISTER; i++) \
+ for (i_ = 0; i_ < FIRST_PSEUDO_REGISTER; i_++) \
if (REGNO_REG_SET_P (FROM, i_)) \
SET_HARD_REG_BIT (TO, i_); \
} while (0)
@@ -126,10 +126,10 @@ do { \
register number and executing CODE for all registers that are set. */
#define EXECUTE_IF_SET_IN_REG_SET(REGSET, MIN, REGNUM, CODE) \
do { \
- register REGSET_ELT_TYPE *scan_rs_ = (REGSET); \
- register int i_; \
+ register int i_ = (MIN) / REGSET_ELT_BITS; \
register int shift_ = (MIN) % REGSET_ELT_BITS; \
- for (i_ = (MIN) / REGSET_ELT_BITS; i_ < regset_size; i_++) \
+ register REGSET_ELT_TYPE *scan_rs_ = (REGSET) + i_; \
+ for ( ; i_ < regset_size; i_++) \
{ \
REGSET_ELT_TYPE word_ = *scan_rs_++; \
if (word_) \
@@ -156,10 +156,10 @@ do { \
/* Like EXECUTE_IF_SET_IN_REG_SET, but also clear the register set. */
#define EXECUTE_IF_SET_AND_RESET_IN_REG_SET(REGSET, MIN, REGNUM, CODE) \
do { \
- register REGSET_ELT_TYPE *scan_rs_ = (REGSET); \
- register int i_; \
+ register int i_ = (MIN) / REGSET_ELT_BITS; \
register int shift_ = (MIN) % REGSET_ELT_BITS; \
- for (i_ = (MIN) / REGSET_ELT_BITS; i_ < regset_size; i_++) \
+ register REGSET_ELT_TYPE *scan_rs_ = (REGSET) + i_; \
+ for ( ; i_ < regset_size; i_++) \
{ \
REGSET_ELT_TYPE word_ = *scan_rs_++; \
if (word_) \
@@ -189,11 +189,11 @@ do { \
set in both regsets. */
#define EXECUTE_IF_AND_IN_REG_SET(REGSET1, REGSET2, MIN, REGNUM, CODE) \
do { \
- register REGSET_ELT_TYPE *scan_rs1_ = (REGSET1); \
- register REGSET_ELT_TYPE *scan_rs2_ = (REGSET2); \
- register int i_; \
+ register int i_ = (MIN) / REGSET_ELT_BITS; \
register int shift_ = (MIN) % REGSET_ELT_BITS; \
- for (i_ = (MIN) / REGSET_ELT_BITS; i_ < regset_size; i_++) \
+ register REGSET_ELT_TYPE *scan_rs1_ = (REGSET1) + i_; \
+ register REGSET_ELT_TYPE *scan_rs2_ = (REGSET2) + i_; \
+ for ( ; i_ < regset_size; i_++) \
{ \
REGSET_ELT_TYPE word_ = *scan_rs1_++ & *scan_rs2_++; \
if (word_) \