The size of struct gimple increases by 8 bytes with the change in size of
location_t from 32- to 64-bit; adjust the WORD markings in the comments
accordingly. It seems that most of the WORD markings were off by one already,
probably not having been updated after a previous reduction in the size of a
gimple, so they have become retroactively correct again, and only a couple
needed adjustment actually.
Also move the 32-bit num_ops member of struct gimple to the end; since there
is now 4 bytes of padding after it, this may enable reuse of the tail
padding for some derived structures.
gcc/ChangeLog:
* gimple.h (struct gimple): Update word marking comments to reflect
the new size of location_t. Move the 32-bit int field to the end.
(struct gphi): Likewise.
---
gcc/gimple.h | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/gcc/gimple.h b/gcc/gimple.h
index 4a6e0e97d1e..6929c792dc5 100644
--- a/gcc/gimple.h
+++ b/gcc/gimple.h
@@ -268,9 +268,6 @@ struct GTY((desc ("gimple_statement_structure (&%h)"), tag
("GSS_BASE"),
Locus information for debug info. */
location_t location;
- /* Number of operands in this tuple. */
- unsigned num_ops;
-
/* [ WORD 3 ]
Basic block holding this statement. */
basic_block bb;
@@ -283,8 +280,12 @@ struct GTY((desc ("gimple_statement_structure (&%h)"), tag
("GSS_BASE"),
and the prev pointer being the last. */
gimple *next;
gimple *GTY((skip)) prev;
-};
+ /* [WORD 6]
+ Number of operands in this tuple. */
+ unsigned num_ops;
+ /* (4 bytes trailing padding) */
+};
/* Base structure for tuples with operands. */
@@ -479,7 +480,7 @@ struct GTY((tag("GSS_PHI")))
/* [ WORD 8 ] */
tree result;
- /* [ WORD 9 ] */
+ /* [ WORD 9-14 ] */
struct phi_arg_d GTY ((length ("%h.nargs"))) args[1];
};