* stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
From-SVN: r42360
This commit is contained in:
parent
d9214e537d
commit
eabb9ed02d
@ -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
|
||||
|
20
gcc/stmt.c
20
gcc/stmt.c
@ -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;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user