This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH]: Set FOR_CALL parameter in the call to promote_mode for VMS
- From: Douglas B Rupp <rupp at gnat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 24 Jul 2009 08:57:50 -0700
- Subject: [PATCH]: Set FOR_CALL parameter in the call to promote_mode for VMS
Fixes a GCC error compiling the VMS GNAT RTL.
Boostrapped and regression tested on x86_64-linux-gnu
OK to commit?
Douglas Rupp for Eric Botcazou
--AdaCore
2009-07-24 Eric Botcazou <botcazou@adacore.com>
Douglas B Rupp <rupp@gnat.com>
* cfgexpand.c (expand_one_register_var): Set FOR_CALL parameter in the
call to promote_mode.
*** gcc/cfgexpand.c.0 2009-07-12 13:23:05.000000000 +0200
--- gcc/cfgexpand.c 2009-07-12 13:25:15.000000000 +0200
*************** expand_one_register_var (tree var)
*** 1071,1077 ****
tree type = TREE_TYPE (decl);
int unsignedp = TYPE_UNSIGNED (type);
enum machine_mode reg_mode
! = promote_mode (type, DECL_MODE (decl), &unsignedp, 0);
rtx x = gen_reg_rtx (reg_mode);
set_rtl (var, x);
--- 1071,1079 ----
tree type = TREE_TYPE (decl);
int unsignedp = TYPE_UNSIGNED (type);
enum machine_mode reg_mode
! = promote_mode (type, DECL_MODE (decl), &unsignedp,
! (TREE_CODE (decl) == RESULT_DECL
! || TREE_CODE (decl) == PARM_DECL) ? 1 : 0);
rtx x = gen_reg_rtx (reg_mode);
set_rtl (var, x);