https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79399
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Ok, then I guess I'll just bootstrap/regtest my patch, it is a way forward without testing it further. Actually: 2017-02-07 Jakub Jelinek <ja...@redhat.com> PR middle-end/79399 * ira-int.h (struct target_ira_int): Change x_max_struct_costs_size type from int to size_t. --- gcc/ira-int.h.jj 2017-01-01 12:45:39.000000000 +0100 +++ gcc/ira-int.h 2017-02-07 09:29:32.694102809 +0100 @@ -782,7 +782,7 @@ struct target_ira_int { /* Initialized once. It is a maximal possible size of the allocated struct costs. */ - int x_max_struct_costs_size; + size_t x_max_struct_costs_size; /* Allocated and initialized once, and used to initialize cost values for each insn. */ is better, this field is followed by a pointer, so it just uses a padding on 64-bit hosts for something useful and on 32-bit hosts won't make any changes.