diff options
author | Richard Henderson <rth@redhat.com> | 2003-04-11 09:22:29 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2003-04-11 09:22:29 -0700 |
commit | a46666a9508860fd72ac9d592956d8364302f154 (patch) | |
tree | 1cb23927181d5252d9655bc7e20fc97b620c0e9d /gcc/expr.c | |
parent | 6d2f9dd377ee9d9af94c58097d3511192eded91c (diff) | |
download | gcc-a46666a9508860fd72ac9d592956d8364302f154.zip gcc-a46666a9508860fd72ac9d592956d8364302f154.tar.gz gcc-a46666a9508860fd72ac9d592956d8364302f154.tar.bz2 |
re PR c/10201 ([IA64] ICE in int_mode_for_mode, at stor-layout.c)
PR c/10201
* expr.c (expand_expr): Move DECL_RTL frobbing ...
* stor-layout.c (layout_decl): ... here.
From-SVN: r65467
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 16 |
1 files changed, 1 insertions, 15 deletions
@@ -6714,21 +6714,7 @@ expand_expr (exp, target, tmode, modifier) but the type is complete now, lay out the decl now. */ if (DECL_SIZE (exp) == 0 && COMPLETE_TYPE_P (TREE_TYPE (exp)) && (TREE_STATIC (exp) || DECL_EXTERNAL (exp))) - { - rtx value = DECL_RTL_IF_SET (exp); - - layout_decl (exp, 0); - - /* If the RTL was already set, update its mode and memory - attributes. */ - if (value != 0) - { - PUT_MODE (value, DECL_MODE (exp)); - SET_DECL_RTL (exp, 0); - set_mem_attributes (value, exp, 1); - SET_DECL_RTL (exp, value); - } - } + layout_decl (exp, 0); /* ... fall through ... */ |