diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2019-09-09 17:59:10 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2019-09-09 17:59:10 +0000 |
commit | 50b3f54d551787e0a066451ef60ef3b055a893e6 (patch) | |
tree | b8072c5a072c571f7f8507ee28b4c867d9f176e5 /gcc/config/sh | |
parent | 6576d245386e2ce52df274ef8f2ffed81cfaa1c3 (diff) | |
download | gcc-50b3f54d551787e0a066451ef60ef3b055a893e6.zip gcc-50b3f54d551787e0a066451ef60ef3b055a893e6.tar.gz gcc-50b3f54d551787e0a066451ef60ef3b055a893e6.tar.bz2 |
Remove COMPL_HARD_REG_SET
"COMPL_HARD_REG_SET (x, y)" becomes "x = ~y".
2019-09-09 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* hard-reg-set.h (HARD_REG_SET::operator~): New function.
(COMPL_HARD_REG_SET): Delete.
* config/c6x/c6x.c (c6x_call_saved_register_used): Use ~ instead
of COMPL_HARD_REG_SET.
(try_rename_operands): Likewise.
* config/sh/sh.c (push_regs): Likewise.
* lra-assigns.c (find_hard_regno_for_1): Likewise.
* lra-constraints.c (contains_reg_p): Likewise.
* reload1.c (finish_spills, choose_reload_regs_init): Likewise.
From-SVN: r275529
Diffstat (limited to 'gcc/config/sh')
-rw-r--r-- | gcc/config/sh/sh.c | 5 |
1 files changed, 1 insertions, 4 deletions
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 |