diff options
author | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-08-27 02:45:17 +0000 |
---|---|---|
committer | Yufeng Zhang <yufeng@gcc.gnu.org> | 2013-08-27 02:45:17 +0000 |
commit | fd91cfe3e0a62ff045811a6dc2fcce2930eef0b3 (patch) | |
tree | 0bc6332e482d5aa6104827fc171e848e953baa4f /gcc | |
parent | 153009500188dd1f91935029be451a4ee5396c0e (diff) | |
download | gcc-fd91cfe3e0a62ff045811a6dc2fcce2930eef0b3.zip gcc-fd91cfe3e0a62ff045811a6dc2fcce2930eef0b3.tar.gz gcc-fd91cfe3e0a62ff045811a6dc2fcce2930eef0b3.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/function.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5bb88ea..4324742 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-08-27 Yufeng Zhang <yufeng.zhang@arm.com> + + * 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 <joern.rennecke@embecosm.com> * config/avr/avr-stdint.h (INT16_TYPE): Change default to "int". diff --git a/gcc/function.c b/gcc/function.c index 4685cb0..c1550a2 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. */ |