From: Yufeng Zhang Date: Tue, 27 Aug 2013 02:45:17 +0000 (+0000) Subject: function.c (assign_parm_find_data_types): Set passed_mode and nominal_mode to the... X-Git-Tag: releases/gcc-4.9.0~4419 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fd91cfe3e0a62ff045811a6dc2fcce2930eef0b3;p=thirdparty%2Fgcc.git function.c (assign_parm_find_data_types): Set passed_mode and nominal_mode to the TYPE_MODE of nominal_type for the built... gcc/ * function.c (assign_parm_find_data_types): Set passed_mode and nominal_mode to the TYPE_MODE of nominal_type for the built pointer type in case of the struct-pass-by-reference. From-SVN: r202014 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5bb88ea63d67..4324742c35eb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-08-27 Yufeng Zhang + + * function.c (assign_parm_find_data_types): Set passed_mode and + nominal_mode to the TYPE_MODE of nominal_type for the built + pointer type in case of the struct-pass-by-reference. + 2013-08-26 Joern Rennecke * config/avr/avr-stdint.h (INT16_TYPE): Change default to "int". diff --git a/gcc/function.c b/gcc/function.c index 4685cb027273..c1550a25393d 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -2386,7 +2386,7 @@ assign_parm_find_data_types (struct assign_parm_data_all *all, tree parm, { passed_type = nominal_type = build_pointer_type (passed_type); data->passed_pointer = true; - passed_mode = nominal_mode = Pmode; + passed_mode = nominal_mode = TYPE_MODE (nominal_type); } /* Find mode as it is passed by the ABI. */