From 405a98aa2b0e09265760cb32423d0e163650f5c1 Mon Sep 17 00:00:00 2001 From: Steve Ellcey Date: Mon, 17 Mar 2003 20:34:04 +0000 Subject: [PATCH] stmt.c (tail_recursion_args): Call promote_mode to set unsignedp flag correctly before calling convert_move. * stmt.c (tail_recursion_args): Call promote_mode to set unsignedp flag correctly before calling convert_move. From-SVN: r64501 --- gcc/ChangeLog | 5 +++++ gcc/stmt.c | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c1daf1af4ca..7859221582d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-03-17 Steve Ellcey + + * stmt.c (tail_recursion_args): Call promote_mode to set + unsignedp flag correctly before calling convert_move. + 2003-03-17 Zdenek Dvorak * loop-unroll.c (decide_peel_completely, diff --git a/gcc/stmt.c b/gcc/stmt.c index 7e5ff1abb3b..823afbff7fa 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -3350,15 +3350,15 @@ tail_recursion_args (actuals, formals) else { rtx tmp = argvec[i]; - + int unsignedp = TREE_UNSIGNED (TREE_TYPE (TREE_VALUE (a))); + promote_mode(TREE_TYPE (TREE_VALUE (a)), GET_MODE (tmp), + &unsignedp, 0); if (DECL_MODE (f) != GET_MODE (DECL_RTL (f))) { tmp = gen_reg_rtx (DECL_MODE (f)); - convert_move (tmp, argvec[i], - TREE_UNSIGNED (TREE_TYPE (TREE_VALUE (a)))); + convert_move (tmp, argvec[i], unsignedp); } - convert_move (DECL_RTL (f), tmp, - TREE_UNSIGNED (TREE_TYPE (TREE_VALUE (a)))); + convert_move (DECL_RTL (f), tmp, unsignedp); } } -- 2.30.2