From 9efdb4adb6c7ee2e70e9c071a662d910d30c5b5f Mon Sep 17 00:00:00 2001
From: Richard Guenther <rguenther@suse.de>
Date: Tue, 3 May 2011 10:18:29 +0000
Subject: [PATCH] re PR tree-optimization/48846 (Many -O2 -flto testsuite
 failures with -m32 -mavx)

2011-05-03  Richard Guenther  <rguenther@suse.de>

	PR lto/48846
	* lto-streamer-in.c (unpack_ts_decl_common_value_fields):
	Stream decl_common.off_align instead of the derived DECL_OFFSET_ALIGN.
	* lto-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.

From-SVN: r173298
---
 gcc/ChangeLog          | 7 +++++++
 gcc/lto-streamer-in.c  | 4 +---
 gcc/lto-streamer-out.c | 2 +-
 3 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index aca7c2213202..468a2945b6f7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2011-05-03  Richard Guenther  <rguenther@suse.de>
+
+	PR lto/48846
+	* lto-streamer-in.c (unpack_ts_decl_common_value_fields):
+	Stream decl_common.off_align instead of the derived DECL_OFFSET_ALIGN.
+	* lto-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.
+
 2011-05-03  Richard Guenther  <rguenther@suse.de>
 
 	* c-decl.c (grokdeclarator): Instead of looking at
diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c
index ce5e33d0929c..63fa5c0292bc 100644
--- a/gcc/lto-streamer-in.c
+++ b/gcc/lto-streamer-in.c
@@ -1653,11 +1653,9 @@ unpack_ts_decl_common_value_fields (struct bitpack_d *bp, tree expr)
 
   if (TREE_CODE (expr) == FIELD_DECL)
     {
-      unsigned HOST_WIDE_INT off_align;
       DECL_PACKED (expr) = (unsigned) bp_unpack_value (bp, 1);
       DECL_NONADDRESSABLE_P (expr) = (unsigned) bp_unpack_value (bp, 1);
-      off_align = (unsigned HOST_WIDE_INT) bp_unpack_value (bp, 8);
-      SET_DECL_OFFSET_ALIGN (expr, off_align);
+      expr->decl_common.off_align = bp_unpack_value (bp, 8);
     }
 
   if (TREE_CODE (expr) == RESULT_DECL
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 959498312a56..61ca69a1a0a2 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -401,7 +401,7 @@ pack_ts_decl_common_value_fields (struct bitpack_d *bp, tree expr)
     {
       bp_pack_value (bp, DECL_PACKED (expr), 1);
       bp_pack_value (bp, DECL_NONADDRESSABLE_P (expr), 1);
-      bp_pack_value (bp, DECL_OFFSET_ALIGN (expr), 8);
+      bp_pack_value (bp, expr->decl_common.off_align, 8);
     }
 
   if (TREE_CODE (expr) == RESULT_DECL
-- 
GitLab