diff options
| author | brolley <brolley@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-01-20 15:26:31 +0000 |
|---|---|---|
| committer | brolley <brolley@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-01-20 15:26:31 +0000 |
| commit | 577fce232b56670ef08965ae4d1587a229b99ab9 (patch) | |
| tree | 513c8529c5987fd4ddd66828f969ce785e8d3a0d /gcc/function.c | |
| parent | 477f2174aa38e8584926060ecdefb9cd8c6be28f (diff) | |
| download | ppe42-gcc-577fce232b56670ef08965ae4d1587a229b99ab9.tar.gz ppe42-gcc-577fce232b56670ef08965ae4d1587a229b99ab9.zip | |
Wed Jan 20 18:15:08 1999 Dave Brolley <brolley@cygnus.com>
* function.c (assign_parms): Save and restore setting of
TREE_USED (parm).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24789 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/function.c')
| -rw-r--r-- | gcc/function.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/function.c b/gcc/function.c index 8a67457495b..1cb8c44bbcd 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4378,6 +4378,7 @@ assign_parms (fndecl, second_time) if (nominal_mode != passed_mode || promoted_nominal_mode != promoted_mode) { + int save_tree_used; /* ENTRY_PARM has been converted to PROMOTED_MODE, its mode, by the caller. We now have to convert it to NOMINAL_MODE, if different. However, PARMREG may be in @@ -4404,8 +4405,11 @@ assign_parms (fndecl, second_time) push_to_sequence (conversion_insns); tempreg = convert_to_mode (nominal_mode, tempreg, unsignedp); + /* TREE_USED gets set erroneously during expand_assignment. */ + save_tree_used = TREE_USED (parm); expand_assignment (parm, make_tree (nominal_type, tempreg), 0, 0); + TREE_USED (parm) = save_tree_used; conversion_insns = get_insns (); did_conversion = 1; end_sequence (); |

