From 7837db73869bb7571c389d41dd97f30b0e29c92f Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Fri, 3 Dec 2004 22:32:06 +0000 Subject: [PATCH] integrate.c (expand_inline_function): Accept non-CONCAT arguments for CONCAT parameters and invoke read_complex_part... * integrate.c (expand_inline_function): Accept non-CONCAT arguments for CONCAT parameters and invoke read_complex_part on them. From-SVN: r91700 --- gcc/ChangeLog | 5 +++++ gcc/integrate.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c54d740e092..3a0dadbb365a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-12-03 Eric Botcazou + + * integrate.c (expand_inline_function): Accept non-CONCAT arguments + for CONCAT parameters and invoke read_complex_part on them. + 2004-12-02 Richard Henderson * expr.c (write_complex_part): Use simplify_gen_subreg when the diff --git a/gcc/integrate.c b/gcc/integrate.c index d2e883683f4e..eea11afd8aed 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -958,12 +958,12 @@ expand_inline_function (tree fndecl, tree parms, rtx target, int ignore, } else if (GET_CODE (loc) == REG) process_reg_param (map, loc, copy); - else if (GET_CODE (loc) == CONCAT && GET_CODE (copy) == CONCAT) + else if (GET_CODE (loc) == CONCAT) { rtx locreal = XEXP (loc, 0); rtx locimag = XEXP (loc, 1); - rtx copyreal = XEXP (copy, 0); - rtx copyimag = XEXP (copy, 1); + rtx copyreal = read_complex_part (copy, false); + rtx copyimag = read_complex_part (copy, true); process_reg_param (map, locreal, copyreal); process_reg_param (map, locimag, copyimag); -- 2.47.2