* stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.

From-SVN: r42360
This commit is contained in:
Richard Kenner 2001-05-20 20:41:49 +00:00 committed by Richard Kenner
parent d9214e537d
commit eabb9ed02d
2 changed files with 19 additions and 5 deletions

View File

@ -1,3 +1,7 @@
Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
2001-05-20 Richard Henderson <rth@redhat.com>
* sched-deps.c (sched_analyze_insn): Force volatile memory reads

View File

@ -3749,14 +3749,24 @@ expand_decl (decl)
type = TREE_TYPE (decl);
/* Only automatic variables need any expansion done.
Static and external variables, and external functions,
will be handled by `assemble_variable' (called from finish_decl).
TYPE_DECL and CONST_DECL require nothing.
PARM_DECLs are handled in `assign_parms'. */
/* For a CONST_DECL, set mode, alignment, and sizes from those of the
type in case this node is used in a reference. */
if (TREE_CODE (decl) == CONST_DECL)
{
DECL_MODE (decl) = TYPE_MODE (type);
DECL_ALIGN (decl) = TYPE_ALIGN (type);
DECL_SIZE (decl) = TYPE_SIZE (type);
DECL_SIZE_UNIT (decl) = TYPE_SIZE_UNIT (type);
return;
}
/* Otherwise, only automatic variables need any expansion done. Static and
external variables, and external functions, will be handled by
`assemble_variable' (called from finish_decl). TYPE_DECL requires
nothing. PARM_DECLs are handled in `assign_parms'. */
if (TREE_CODE (decl) != VAR_DECL)
return;
if (TREE_STATIC (decl) || DECL_EXTERNAL (decl))
return;