aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/c6x/c6x.c4
-rw-r--r--gcc/config/sh/sh.c5
2 files changed, 3 insertions, 6 deletions
diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c
index 05b111e..f6a4518 100644
--- a/gcc/config/c6x/c6x.c
+++ b/gcc/config/c6x/c6x.c
@@ -1094,7 +1094,7 @@ c6x_call_saved_register_used (tree call_expr)
INIT_CUMULATIVE_ARGS (cum_v, NULL, NULL, 0, 0);
cum = pack_cumulative_args (&cum_v);
- COMPL_HARD_REG_SET (call_saved_regset, call_used_reg_set);
+ call_saved_regset = ~call_used_reg_set;
for (i = 0; i < call_expr_nargs (call_expr); i++)
{
parameter = CALL_EXPR_ARG (call_expr, i);
@@ -3472,7 +3472,7 @@ try_rename_operands (rtx_insn *head, rtx_insn *tail, unit_req_table reqs,
}
/* If we get here, we can do the renaming. */
- COMPL_HARD_REG_SET (unavailable, reg_class_contents[(int) super_class]);
+ unavailable = ~reg_class_contents[super_class];
old_reg = this_head->regno;
best_reg =
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index d1af580..4b70ac9 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -6908,11 +6908,8 @@ push_regs (HARD_REG_SET *mask, bool interrupt_handler)
if (i == FIRST_FP_REG && interrupt_handler && TARGET_FMOVD
&& hard_reg_set_intersect_p (*mask, reg_class_contents[DF_REGS]))
{
- HARD_REG_SET unsaved;
-
push (FPSCR_REG);
- COMPL_HARD_REG_SET (unsaved, *mask);
- fpscr_set_from_mem (NORMAL_MODE (FP_MODE), unsaved);
+ fpscr_set_from_mem (NORMAL_MODE (FP_MODE), ~*mask);
skip_fpscr = true;
}
if (i != PR_REG