From 31ae0e43aac40d1c45d00be9cda260c30d87d154 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Thu, 21 Dec 2017 07:01:17 +0000 Subject: [PATCH] poly_int: emit_inc This patch changes the LRA emit_inc routine so that it takes a poly_int64 rather than an int. 2017-12-21 Richard Sandiford Alan Hayward David Sherwood gcc/ * lra-constraints.c (emit_inc): Change inc_amount from an int to a poly_int64. Co-Authored-By: Alan Hayward Co-Authored-By: David Sherwood From-SVN: r255923 --- gcc/ChangeLog | 7 +++++++ gcc/lra-constraints.c | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 30abd3dea01..f633487e528 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2017-12-21 Richard Sandiford + Alan Hayward + David Sherwood + + * lra-constraints.c (emit_inc): Change inc_amount from an int + to a poly_int64. + 2017-12-21 Richard Sandiford Alan Hayward David Sherwood diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index de45d2c0252..73ffba2c75f 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -3534,7 +3534,7 @@ process_address (int nop, bool check_only_p, Return pseudo containing the result. */ static rtx -emit_inc (enum reg_class new_rclass, rtx in, rtx value, int inc_amount) +emit_inc (enum reg_class new_rclass, rtx in, rtx value, poly_int64 inc_amount) { /* REG or MEM to be copied and incremented. */ rtx incloc = XEXP (value, 0); @@ -3562,7 +3562,7 @@ emit_inc (enum reg_class new_rclass, rtx in, rtx value, int inc_amount) if (GET_CODE (value) == PRE_DEC || GET_CODE (value) == POST_DEC) inc_amount = -inc_amount; - inc = GEN_INT (inc_amount); + inc = gen_int_mode (inc_amount, GET_MODE (value)); } if (! post && REG_P (incloc)) -- 2.30.2