re PR lto/52178 (Ada bootstrap failure in LTO mode)
2012-02-14 Richard Guenther <rguenther@suse.de> PR lto/52178 * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers): Do not stream DECL_QUALIFIER. * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise. * tree.c (free_lang_data_in_decl): Free DECL_QUALIFIER. (find_decls_types_r): Do not walk DECL_QUALIFIER. From-SVN: r184200
This commit is contained in:
parent
f0ebe02d7f
commit
837487be7b
|
@ -1,3 +1,12 @@
|
||||||
|
2012-02-14 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR lto/52178
|
||||||
|
* tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
|
||||||
|
Do not stream DECL_QUALIFIER.
|
||||||
|
* tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise.
|
||||||
|
* tree.c (free_lang_data_in_decl): Free DECL_QUALIFIER.
|
||||||
|
(find_decls_types_r): Do not walk DECL_QUALIFIER.
|
||||||
|
|
||||||
2012-02-14 Jakub Jelinek <jakub@redhat.com>
|
2012-02-14 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
PR c/52181
|
PR c/52181
|
||||||
|
|
|
@ -640,7 +640,7 @@ lto_input_ts_field_decl_tree_pointers (struct lto_input_block *ib,
|
||||||
{
|
{
|
||||||
DECL_FIELD_OFFSET (expr) = stream_read_tree (ib, data_in);
|
DECL_FIELD_OFFSET (expr) = stream_read_tree (ib, data_in);
|
||||||
DECL_BIT_FIELD_TYPE (expr) = stream_read_tree (ib, data_in);
|
DECL_BIT_FIELD_TYPE (expr) = stream_read_tree (ib, data_in);
|
||||||
DECL_QUALIFIER (expr) = stream_read_tree (ib, data_in);
|
/* Do not stream DECL_QUALIFIER, it is useless after gimplification. */
|
||||||
DECL_FIELD_BIT_OFFSET (expr) = stream_read_tree (ib, data_in);
|
DECL_FIELD_BIT_OFFSET (expr) = stream_read_tree (ib, data_in);
|
||||||
DECL_FCONTEXT (expr) = stream_read_tree (ib, data_in);
|
DECL_FCONTEXT (expr) = stream_read_tree (ib, data_in);
|
||||||
}
|
}
|
||||||
|
|
|
@ -552,7 +552,7 @@ write_ts_field_decl_tree_pointers (struct output_block *ob, tree expr,
|
||||||
{
|
{
|
||||||
stream_write_tree (ob, DECL_FIELD_OFFSET (expr), ref_p);
|
stream_write_tree (ob, DECL_FIELD_OFFSET (expr), ref_p);
|
||||||
stream_write_tree (ob, DECL_BIT_FIELD_TYPE (expr), ref_p);
|
stream_write_tree (ob, DECL_BIT_FIELD_TYPE (expr), ref_p);
|
||||||
stream_write_tree (ob, DECL_QUALIFIER (expr), ref_p);
|
/* Do not stream DECL_QUALIFIER, it is useless after gimplification. */
|
||||||
stream_write_tree (ob, DECL_FIELD_BIT_OFFSET (expr), ref_p);
|
stream_write_tree (ob, DECL_FIELD_BIT_OFFSET (expr), ref_p);
|
||||||
stream_write_tree (ob, DECL_FCONTEXT (expr), ref_p);
|
stream_write_tree (ob, DECL_FCONTEXT (expr), ref_p);
|
||||||
}
|
}
|
||||||
|
|
|
@ -4596,7 +4596,10 @@ free_lang_data_in_decl (tree decl)
|
||||||
free_lang_data_in_one_sizepos (&DECL_SIZE (decl));
|
free_lang_data_in_one_sizepos (&DECL_SIZE (decl));
|
||||||
free_lang_data_in_one_sizepos (&DECL_SIZE_UNIT (decl));
|
free_lang_data_in_one_sizepos (&DECL_SIZE_UNIT (decl));
|
||||||
if (TREE_CODE (decl) == FIELD_DECL)
|
if (TREE_CODE (decl) == FIELD_DECL)
|
||||||
|
{
|
||||||
free_lang_data_in_one_sizepos (&DECL_FIELD_OFFSET (decl));
|
free_lang_data_in_one_sizepos (&DECL_FIELD_OFFSET (decl));
|
||||||
|
DECL_QUALIFIER (decl) = NULL_TREE;
|
||||||
|
}
|
||||||
|
|
||||||
if (TREE_CODE (decl) == FUNCTION_DECL)
|
if (TREE_CODE (decl) == FUNCTION_DECL)
|
||||||
{
|
{
|
||||||
|
@ -4800,7 +4803,6 @@ find_decls_types_r (tree *tp, int *ws, void *data)
|
||||||
{
|
{
|
||||||
fld_worklist_push (DECL_FIELD_OFFSET (t), fld);
|
fld_worklist_push (DECL_FIELD_OFFSET (t), fld);
|
||||||
fld_worklist_push (DECL_BIT_FIELD_TYPE (t), fld);
|
fld_worklist_push (DECL_BIT_FIELD_TYPE (t), fld);
|
||||||
fld_worklist_push (DECL_QUALIFIER (t), fld);
|
|
||||||
fld_worklist_push (DECL_FIELD_BIT_OFFSET (t), fld);
|
fld_worklist_push (DECL_FIELD_BIT_OFFSET (t), fld);
|
||||||
fld_worklist_push (DECL_FCONTEXT (t), fld);
|
fld_worklist_push (DECL_FCONTEXT (t), fld);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue