On 10/28/2013 03:38 PM, Andrew MacLeod wrote:
I noticed there were a few .h files which we including tree-core.h
themselves. expr.h was one of them, and many of the rtl files used
that to get at the basic tree structure for various bits.
I moved the include of tree-core.h to rtl.h instead. That way all the
rtl files get it, and when we flatten the rtl.h includes into the c
files, it'll be reduced to just the ones that need it. Eventually,
those things that need it from rtl.h won't even need tree-code.h,
they'll get converted to the new gimple interface instead.
bah, looks like I broke some cross compiling. Apparently some gen*
routines include rtl.h before all-tree.def exists, and this causes
breakage. Doesnt happen during stage 1 of a cross, but later.
sigh.
I'll put tree-core.h back into expr.h, remove it from rtl.h and look to
flatten it properly shortly...
bootstrapped on x86_64-unknown-linux-gnu and applied as revision 204167.
Andrew
* expr.h: Revert change and include tree-core.h.
* rtl.h: Revert change and don't include tree-core.h.
Index: expr.h
===================================================================
*** expr.h (revision 204163)
--- expr.h (working copy)
*************** along with GCC; see the file COPYING3.
*** 26,31 ****
--- 26,34 ----
#include "rtl.h"
/* For optimize_size */
#include "flags.h"
+ /* For host_integerp, tree_low_cst, fold_convert, size_binop, ssize_int,
+ TREE_CODE, TYPE_SIZE, int_size_in_bytes, */
+ #include "tree-core.h"
/* For GET_MODE_BITSIZE, word_mode */
#include "machmode.h"
Index: rtl.h
===================================================================
*** rtl.h (revision 204163)
--- rtl.h (working copy)
*************** along with GCC; see the file COPYING3.
*** 29,35 ****
#include "alias.h"
#include "hashtab.h"
#include "flags.h"
- #include "tree-core.h"
/* Value used by some passes to "recognize" noop moves as valid
instructions. */
--- 29,34 ----