From e8b0314a583b028ad2d6508b455e33f5787bffe1 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Tue, 10 Sep 2019 16:19:23 +0000 Subject: [PATCH] Make get_call_rtx_from take a const rtx_insn * Only one caller (in dwarf2out.c) was preventing get_call_rtx_from from taking an rtx_insn *. Since that caller just passes a PATTERN, it's a trivial change to make. 2019-09-10 Richard Sandiford gcc/ * rtl.h (get_call_rtx_from): Take a const rtx_insn * instead of an rtx. * rtlanal.c (get_call_rtx_from): Likewise. * dwarf2out.c (dwarf2out_var_location): Pass the insn rather than the pattern to get_call_rtx_from. * config/i386/i386-expand.h (ix86_notrack_prefixed_insn_p): Take an rtx_insn * instead of an rtx. * config/i386/i386-expand.c (ix86_notrack_prefixed_insn_p): Likewise. From-SVN: r275593 --- gcc/ChangeLog | 10 ++++++++++ gcc/config/i386/i386-expand.c | 2 +- gcc/config/i386/i386-expand.h | 2 +- gcc/dwarf2out.c | 2 +- gcc/rtl.h | 2 +- gcc/rtlanal.c | 5 ++--- 6 files changed, 16 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1bd7fa29f1b..0ec847ca9d8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2019-09-10 Richard Sandiford + + * rtl.h (get_call_rtx_from): Take a const rtx_insn * instead of an rtx. + * rtlanal.c (get_call_rtx_from): Likewise. + * dwarf2out.c (dwarf2out_var_location): Pass the insn rather + than the pattern to get_call_rtx_from. + * config/i386/i386-expand.h (ix86_notrack_prefixed_insn_p): Take + an rtx_insn * instead of an rtx. + * config/i386/i386-expand.c (ix86_notrack_prefixed_insn_p): Likewise. + 2019-09-10 Martin Liska * common.opt: Use newly added WarnRemoved. diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c index 862cd81da4d..22c2823c549 100644 --- a/gcc/config/i386/i386-expand.c +++ b/gcc/config/i386/i386-expand.c @@ -19969,7 +19969,7 @@ ix86_expand_sse2_mulvxdi3 (rtx op0, rtx op1, rtx op2) should be encoded with notrack prefix. */ bool -ix86_notrack_prefixed_insn_p (rtx insn) +ix86_notrack_prefixed_insn_p (rtx_insn *insn) { if (!insn || !((flag_cf_protection & CF_BRANCH))) return false; diff --git a/gcc/config/i386/i386-expand.h b/gcc/config/i386/i386-expand.h index 9271bb85ac5..70b6b280eba 100644 --- a/gcc/config/i386/i386-expand.h +++ b/gcc/config/i386/i386-expand.h @@ -50,7 +50,7 @@ rtx ix86_expand_builtin (tree exp, rtx target, rtx subtarget, machine_mode mode, int ignore); bool ix86_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, rtx op1, const vec_perm_indices &sel); -bool ix86_notrack_prefixed_insn_p (rtx insn); +bool ix86_notrack_prefixed_insn_p (rtx_insn *); machine_mode ix86_split_reduction (machine_mode mode); void ix86_expand_divmod_libfunc (rtx libfunc, machine_mode mode, rtx op0, rtx op1, rtx *quot_p, rtx *rem_p); diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 279c6b752ad..c359c2d4af9 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -27505,7 +27505,7 @@ create_label: ca_loc->tail_call_p = SIBLING_CALL_P (prev); /* Look for a SYMBOL_REF in the "prev" instruction. */ - rtx x = get_call_rtx_from (PATTERN (prev)); + rtx x = get_call_rtx_from (prev); if (x) { /* Try to get the call symbol, if any. */ diff --git a/gcc/rtl.h b/gcc/rtl.h index 911b563a6dc..c054861f896 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -3419,7 +3419,7 @@ extern bool nonzero_address_p (const_rtx); extern int rtx_unstable_p (const_rtx); extern bool rtx_varies_p (const_rtx, bool); extern bool rtx_addr_varies_p (const_rtx, bool); -extern rtx get_call_rtx_from (rtx); +extern rtx get_call_rtx_from (const rtx_insn *); extern HOST_WIDE_INT get_integer_term (const_rtx); extern rtx get_related_value (const_rtx); extern bool offset_within_block_p (const_rtx, HOST_WIDE_INT); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 3dcdc846cbe..dfc6fe2aec8 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -811,10 +811,9 @@ rtx_addr_varies_p (const_rtx x, bool for_alias) /* Return the CALL in X if there is one. */ rtx -get_call_rtx_from (rtx x) +get_call_rtx_from (const rtx_insn *insn) { - if (INSN_P (x)) - x = PATTERN (x); + rtx x = PATTERN (insn); if (GET_CODE (x) == PARALLEL) x = XVECEXP (x, 0, 0); if (GET_CODE (x) == SET) -- 2.30.2