aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/tree-streamer-in.c5
-rw-r--r--gcc/tree-streamer-out.c5
3 files changed, 13 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a43fc24..0787f59 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2012-10-17 Richard Biener <rguenther@suse.de>
+
+ * tree-streamer-out.c (write_ts_decl_common_tree_pointers):
+ Do not write TREE_CHAIN of PARM_DECLs.
+ (write_ts_decl_non_common_tree_pointers): Instead stream
+ the DECL_ARGUMENTS chain.
+ * tree-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
+ Do not read TREE_CHAIN of PARM_DECLs.
+ (lto_input_ts_decl_non_common_tree_pointes): Instead read
+ the DECL_ARGUMENTS as chain.
+
2012-10-17 Steven Bosscher <steven@gcc.gnu.org>
* config/iq2000/iq2000.h (call_used_regs): Remove definition.
diff --git a/gcc/tree-streamer-in.c b/gcc/tree-streamer-in.c
index 1a615f1..9e1e975 100644
--- a/gcc/tree-streamer-in.c
+++ b/gcc/tree-streamer-in.c
@@ -643,9 +643,6 @@ lto_input_ts_decl_common_tree_pointers (struct lto_input_block *ib,
for early inlining so drop it on the floor instead of ICEing in
dwarf2out.c. */
- if (TREE_CODE (expr) == PARM_DECL)
- TREE_CHAIN (expr) = streamer_read_chain (ib, data_in);
-
if ((TREE_CODE (expr) == VAR_DECL
|| TREE_CODE (expr) == PARM_DECL)
&& DECL_HAS_VALUE_EXPR_P (expr))
@@ -670,7 +667,7 @@ lto_input_ts_decl_non_common_tree_pointers (struct lto_input_block *ib,
{
if (TREE_CODE (expr) == FUNCTION_DECL)
{
- DECL_ARGUMENTS (expr) = stream_read_tree (ib, data_in);
+ DECL_ARGUMENTS (expr) = streamer_read_chain (ib, data_in);
DECL_RESULT (expr) = stream_read_tree (ib, data_in);
}
else if (TREE_CODE (expr) == TYPE_DECL)
diff --git a/gcc/tree-streamer-out.c b/gcc/tree-streamer-out.c
index dcde169..ee5e311 100644
--- a/gcc/tree-streamer-out.c
+++ b/gcc/tree-streamer-out.c
@@ -562,9 +562,6 @@ write_ts_decl_common_tree_pointers (struct output_block *ob, tree expr,
for early inlining so drop it on the floor instead of ICEing in
dwarf2out.c. */
- if (TREE_CODE (expr) == PARM_DECL)
- streamer_write_chain (ob, TREE_CHAIN (expr), ref_p);
-
if ((TREE_CODE (expr) == VAR_DECL
|| TREE_CODE (expr) == PARM_DECL)
&& DECL_HAS_VALUE_EXPR_P (expr))
@@ -585,7 +582,7 @@ write_ts_decl_non_common_tree_pointers (struct output_block *ob, tree expr,
{
if (TREE_CODE (expr) == FUNCTION_DECL)
{
- stream_write_tree (ob, DECL_ARGUMENTS (expr), ref_p);
+ streamer_write_chain (ob, DECL_ARGUMENTS (expr), ref_p);
stream_write_tree (ob, DECL_RESULT (expr), ref_p);
}
else if (TREE_CODE (expr) == TYPE_DECL)