aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2010-01-26 16:29:00 +0000
committerRichard Guenther <rguenther@suse.de>2010-01-26 16:29:00 +0000
commit45b433cf252bf98fe2a5aa4b5af7f99e8fe47dcc (patch)
treed3ae4a4fbb8df172a6a0499e5f022539fb99886e
parente9d5a07151ac76d90b7561a39756393ecbf80a04 (diff)
2010-01-26 Richard Guenther <rguenther@suse.de>
* df-scan.c (df_scan_set_bb_info): Remove assert. (df_insn_rescan_debug_internal): Merge asserts. (df_install_ref): Likewise. (df_mark_reg): Use bitmap_set_range. (df_hard_reg_used_p): Remove assert. (df_hard_reg_used_count): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@156253 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/df-scan.c17
2 files changed, 16 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d1e2417b7aa..5bb9066caf2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,14 @@
2010-01-26 Richard Guenther <rguenther@suse.de>
+ * df-scan.c (df_scan_set_bb_info): Remove assert.
+ (df_insn_rescan_debug_internal): Merge asserts.
+ (df_install_ref): Likewise.
+ (df_mark_reg): Use bitmap_set_range.
+ (df_hard_reg_used_p): Remove assert.
+ (df_hard_reg_used_count): Likewise.
+
+2010-01-26 Richard Guenther <rguenther@suse.de>
+
PR rtl-optimization/42685
* web.c (web_main): Ignore DEBUG_INSNs.
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 4428b8820e9..6c8c42b0f7c 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -285,7 +285,6 @@ static void
df_scan_set_bb_info (unsigned int index,
struct df_scan_bb_info *bb_info)
{
- gcc_assert (df_scan);
df_grow_bb_info (df_scan);
df_scan->block_info[index] = (void *) bb_info;
}
@@ -1321,8 +1320,8 @@ df_insn_rescan_debug_internal (rtx insn)
unsigned int uid = INSN_UID (insn);
struct df_insn_info *insn_info;
- gcc_assert (DEBUG_INSN_P (insn));
- gcc_assert (VAR_LOC_UNKNOWN_P (INSN_VAR_LOCATION_LOC (insn)));
+ gcc_assert (DEBUG_INSN_P (insn)
+ && VAR_LOC_UNKNOWN_P (INSN_VAR_LOCATION_LOC (insn)));
if (!df)
return false;
@@ -2603,8 +2602,8 @@ df_install_ref (df_ref this_ref,
df->hard_regs_live_count[regno]++;
}
- gcc_assert (DF_REF_NEXT_REG (this_ref) == NULL);
- gcc_assert (DF_REF_PREV_REG (this_ref) == NULL);
+ gcc_assert (DF_REF_NEXT_REG (this_ref) == NULL
+ && DF_REF_PREV_REG (this_ref) == NULL);
DF_REF_NEXT_REG (this_ref) = head;
@@ -3851,13 +3850,13 @@ df_mark_reg (rtx reg, void *vset)
gcc_assert (GET_MODE (reg) != BLKmode);
- bitmap_set_bit (set, regno);
if (regno < FIRST_PSEUDO_REGISTER)
{
int n = hard_regno_nregs[regno][GET_MODE (reg)];
- while (--n > 0)
- bitmap_set_bit (set, regno + n);
+ bitmap_set_range (set, regno, n);
}
+ else
+ bitmap_set_bit (set, regno);
}
@@ -4257,7 +4256,6 @@ df_update_entry_exit_and_calls (void)
bool
df_hard_reg_used_p (unsigned int reg)
{
- gcc_assert (df);
return df->hard_regs_live_count[reg] != 0;
}
@@ -4272,7 +4270,6 @@ df_hard_reg_used_p (unsigned int reg)
unsigned int
df_hard_reg_used_count (unsigned int reg)
{
- gcc_assert (df);
return df->hard_regs_live_count[reg];
}