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 ----

Reply via email to