> > > > Since the missing macros seem to have moved from rtl.h to basic-block.h, > > I'd > > like to know at which place one would need gcc make include the additional > > header. IIUC, instruction-emit.c is the machine-generated source file that > > is > > generated by the machine-description parsers. > > > > Simply adding basic-block.h to the include list of the generated > > emit-insn.c > > does not solve the problem but causes follow-up failures. > > > > I'd appreciate help. > > I am looking into that now. I would preffer the way of adding > basic-block.h and friends into includes of insn-emit.c as in general I > would like to make expanders/splitters/output templates aware of the > profile (and thus BB they are in) so we can switch in between -O2/-Os on > local basis. > I must admit I am not 100% sure how to reach this elegantly as all the > ingerfaces are bit interwinded (even for the splitters we split in > final.c where we no longer have CFG available for all targets)
The attached patch seems to fix the problem to me (at least to the point so I can build cc1 binarry). What kind of other problems you are seeing? Index: Makefile.in =================================================================== RCS file: /cvs/gcc/gcc/gcc/Makefile.in,v retrieving revision 1.1488 diff -c -3 -p -r1.1488 Makefile.in *** Makefile.in 18 May 2005 20:45:02 -0000 1.1488 --- Makefile.in 20 May 2005 18:11:58 -0000 *************** s-constants : $(MD_DEPS) build/genconsta *** 2452,2458 **** insn-emit.o : insn-emit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(RTL_H) $(EXPR_H) real.h output.h insn-config.h $(OPTABS_H) reload.h \ ! $(RECOG_H) toplev.h function.h $(FLAGS_H) hard-reg-set.h $(RESOURCE_H) $(TM_P_H) $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-emit.c \ $(OUTPUT_OPTION) --- 2452,2459 ---- insn-emit.o : insn-emit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(RTL_H) $(EXPR_H) real.h output.h insn-config.h $(OPTABS_H) reload.h \ ! $(RECOG_H) toplev.h function.h $(FLAGS_H) hard-reg-set.h $(RESOURCE_H) \ ! $(TM_P_H) $(BASIC_BLOCK_H) $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-emit.c \ $(OUTPUT_OPTION) Index: genemit.c =================================================================== RCS file: /cvs/gcc/gcc/gcc/genemit.c,v retrieving revision 1.98 diff -c -3 -p -r1.98 genemit.c *** genemit.c 5 Mar 2005 14:01:00 -0000 1.98 --- genemit.c 20 May 2005 18:11:58 -0000 *************** from the machine description file `md'. *** 845,850 **** --- 845,851 ---- printf ("#include \"reload.h\"\n"); printf ("#include \"toplev.h\"\n"); printf ("#include \"ggc.h\"\n\n"); + printf ("#include \"basic-block.h\"\n\n"); printf ("#define FAIL return (end_sequence (), _val)\n"); printf ("#define DONE return (_val = get_insns (), end_sequence (), _val)\n\n");