diff options
Diffstat (limited to 'gcc/tree-streamer-out.c')
-rw-r--r-- | gcc/tree-streamer-out.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/tree-streamer-out.c b/gcc/tree-streamer-out.c index 7e1c34b..9ca0271 100644 --- a/gcc/tree-streamer-out.c +++ b/gcc/tree-streamer-out.c @@ -110,9 +110,14 @@ pack_ts_base_value_fields (struct bitpack_d *bp, tree expr) bp_pack_value (bp, TREE_DEPRECATED (expr), 1); if (TYPE_P (expr)) { - bp_pack_value (bp, TYPE_SATURATING (expr), 1); + if (AGGREGATE_TYPE_P (expr)) + bp_pack_value (bp, TYPE_REVERSE_STORAGE_ORDER (expr), 1); + else + bp_pack_value (bp, TYPE_SATURATING (expr), 1); bp_pack_value (bp, TYPE_ADDR_SPACE (expr), 8); } + else if (TREE_CODE (expr) == BIT_FIELD_REF || TREE_CODE (expr) == MEM_REF) + bp_pack_value (bp, REF_REVERSE_STORAGE_ORDER (expr), 1); else if (TREE_CODE (expr) == SSA_NAME) { bp_pack_value (bp, SSA_NAME_IS_DEFAULT_DEF (expr), 1); |