[29/32] Remove global call sets: sched-deps.c
diff mbox series

Message ID mptzhjatzfy.fsf@arm.com
State New
Headers show
  • Support multiple ABIs in the same translation unit
Related show

Commit Message

Richard Sandiford Sept. 11, 2019, 7:17 p.m. UTC
This is a straight replacement of an existing "full or partial"
call-clobber check.

2019-09-11  Richard Sandiford  <richard.sandiford@arm.com>

	* sched-deps.c (deps_analyze_insn): Use the ABI of the target
	function to test whether a register is fully or partly clobbered.

diff mbox series

Index: gcc/sched-deps.c
--- gcc/sched-deps.c	2019-09-11 19:47:32.902202887 +0100
+++ gcc/sched-deps.c	2019-09-11 19:49:08.517529131 +0100
@@ -3736,9 +3736,7 @@  deps_analyze_insn (class deps_desc *deps
              Since we only have a choice between 'might be clobbered'
              and 'definitely not clobbered', we must include all
              partly call-clobbered registers here.  */
-	    else if (targetm.hard_regno_call_part_clobbered (abi.id (), i,
-							     reg_raw_mode[i])
-                     || TEST_HARD_REG_BIT (regs_invalidated_by_call, i))
+	    else if (abi.clobbers_at_least_part_of_reg_p (i))
               SET_REGNO_REG_SET (reg_pending_clobbers, i);
           /* We don't know what set of fixed registers might be used
              by the function, but it is certain that the stack pointer