2009-06-04  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_config_cc_spec): Pass -mivc2 to gcc when
	appropriate.

2009-05-22  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_cgen_config_opc): Propagate endianness and VLIW
	size to default configuration.

2009-05-19  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_extra_headers): Remove stdint.h from EXTRA_HEADERS.

	* mepcfgtool.c (do_user_cop_ip): Fix type of "width".
	(gen_cpu_flags): New.
	(do_cgen_config_opc): Call it.  Change default config to be first
	real config, with all options enabled.

2009-04-30  DJ Delorie  <dj@redhat.com>

	* default.cfg: Add IVC2 coprocessor.
	* current.cfg: Regenerate.
	* lex.cfg.c: Regenerate.
	* lex.cmodel.c: Regenerate.
	* lex.gmap.c: Regenerate.
	* mepcfgtool.c (do_cpu_config): Add IVC2 support.
	(do_cgen_config_opc): Likewise.
	(gen_cpu_Makefile_in_only_config1): Likewise.
	(gen_cpu_Makefile_in_only_config2): Likewise.
	(gen_cpu_Makefile_config): Likewise.
	* verify-cfg.c (process_cop_ip): Add IVC2 support.
	
2009-04-07  DJ Delorie  <dj@redhat.com>

	* default.cfg: Update to C5.
	* current.cfg: Regenerate.
	* lex.cfg.c: Regenerate.
	* lex.cmodel.c: Regenerate.
	* lex.gmap.c: Regenerate.
	* mepcfgtool.c: Add C5 support.
	(do_config_cc_support): Allow -mconfig to be optional.
	(align_xmem_base): New.
	(next_xmem_base): New.
	(scan_dmem): Use them to place memory regions.
	(find_ld_imem_dmem): Likewise.
	* mepcfgtool.h: Add C5 support.
	* parse.cfg.c: Regenerate.
	* parse.cfg.h: Regenerate.
	* parse.cmodel.c: Regenerate.
	* parse.cmodel.h: Regenerate.
	* parse.gmap.c: Regenerate.
	* parse.gmap.h: Regenerate.
	* verify-cfg.c: Add C5 support.

2009-02-02  DJ Delorie  <dj@redhat.com>

	* default.cfg: Updated to new config.
	* current.cfg: Likewise.
	* default.gmap: New.

2007-02-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Don't call scan_mm_int or
	generate a call to b->map_mm_int.

2007-02-07  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (all-binutils,all-gas,all-ld): Depend on
	mep-reconfig-opcodes.

2007-01-03  Dave Brolley  <brolley@redhat.com>

	* lex.cfg.c: Regenerated.
	* lex.cmodel.c: Regenerated.
	* lex.gmap.c: Regenerated.

2006-12-07  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-reconfig, mep-reconfig-opcodes) 
	(mep-reconfig-sid, mep-reconfig-gcc, mep-rebuild-gcc) 
	(mep-rebuild-target-libgloss, mep-reinstall-gcc) 
	(mep-reinstall-gdb, mep-reinstall-sid, all-gdb): Rework
	dependencies for correct parallel make.
	(configure-opcodes, configure-sid, configure-gcc) 
	(configure-utils): New targets for parallel make.

2005-10-12  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Correct output for
	the CLP abd BIT options.

2005-08-22  Dave Brolley  <brolley@redhat.com>

	* current.cfg: New file, automatically generated by MeP-Integrator.

2005-08-22  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_extra_headers): Add stdint.h, simplify the
	logic.

2005-07-29  Dave Brolley  <brolley@redhat.com>

	* Merge Changes from latest branch:
	2005-06-30  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (irq_t): Member 'media_module' renamed to 'src-module'.
	(modules_so_far): Now static at file scope.
	(n_msf): Likewise.
	(add_msf): New static function.
	(check_irq_mod): Reworked. Returns module which is the source of the
	irq.
	(check_irq_range): Now takes only one argument.
	(do_sidmain_config): Scan all irqs before processing any modules. Call
	add_msf for modules with no IRQ spec.

	2005-06-14  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (check_arcadia_isa): Warn when ACDB is used within COP.
	* avc.acd,avc2.acd: Removed

	2005-05-02  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (scan_cop_ip): New static function.
	(do_user_cop_ip): Call scan_cop_ip.
	(do_user_isa_includes): Don't scan for COP.IP here.
	(do_cgen_config_opc): Generate parse and print handlers for COP.IP
	cr and ccr operands.

	2005-04-27  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (process_cop_ip): Preserve IP node for AVC and AVC2.
	* mepcfgtool.c (record_cop_ip): Copy ip_name using strdup.
	(do_user_cop_ip): Collect ISAs, one from each line, to output in
	the final pmacro.
	(do_user_isa_includes): Only output fpu changes if coprocessor is fmax.
	(process_arcadia_files): Use 'include_from' to obtain module header
	contents for coprocessors specified using IP.
	(gen_Makefile_in_only_config): Only output fpu changes if coprocessor is fmax.
	(do_cpu_Makefile_config): Likewise.

	2005-04-20  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (gen_user_cpu): Generate
	'#define mep_ext<n>_hardware hardware' to avoid problems with CGEN.

	2005-04-12  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (gen_cgen_core): Don't generate a backslash before
	$(cgendir).
	(gen_cgen_cop): Likewise.

	2005-04-12  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_user_isa_includes): Generate #include of "*-fp.h"
	and using cluase for sidutil::*_fp.
	(gen_user_cpu): Likewise.
	(gen_Makefile_in_only_config): Add *-fp.lo, *-fp.P and *-fp.cxx to
	the approriate make variables.

	2005-03-31  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (gen_cgen_core): Generate call to CGEN using "with-multiple-isa".
	(gen_cgen_cop): Likewise.

	2005-03-18  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (process_cop_ip): Set up parameters for FMAX coprocessor.
	* mepcfgtool.c (upcase): Moved to earlier in the file.
	(downcase): New static function.
	(cpu_fname_from_arcadia_fname): Copy the terminating nul of fname before
	using strcasecmp.
	(struct cop_ip): New struct type.
	(cop_ips): New static variable.
	(record_cop_ip): New function.
	(do_user_cop_ip): New function.
	(do_user_isa_includes): Customize the .cpu files associated with each
	unique COP.IP specification. #include the customize .cpu files into
	mep-ext-cop.cpu. #include "fp.h" into "mep.h". #include the *-cpu.h
	file associated with the COP.IP into mep.h.
	(gen_user_cpu): copro_p is now copro and has type Node *. #include the
	*-cpu.h header for the COP.IP into mep_ext<n>.h. Add *_fp_fpu member to
	(do_user_cpu_config): Pass COP node to gen_user_cpu.
	(do_sidmain_config): Initialize ccr registers for FMAX.
	(gen_Makefile_in_only_config): Add *-fpu.lo to libmep_la_OBJECTS for each
	COP.IP. Add *-fpu.P to DEP_FILES for each COP.IP. Add *-cpu.cxx to
	CPU_SOURCES for each COP.IP.
	mep_ext<n>_cpu. #define CGEN_CPU_FPU macro for CGEN.
	(main): Call do_cpu_Makefile_config last.

	2005-03-11  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (check_bus_addresses): lbus_if is now Node *. Use
	lbus_if as node for error regarding LBUS_ADDRESS. Check that
	LBUS_SIZE was found.
	(verify_dsp): lbus_if is now Node *.
	(verify_hw_engine): Likewise.

	2005-03-02  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (verify_me_module): Check that INTC.CHANNEL_BITW
	can accomodate the TIMER and DMAC interrupts.

	2005-02-24  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c: Change isa_define to cgen_define everywhere.
	(check_bus_addr): Check that LOCAL_BUS ranges are within
	0x600000-0x6fffff.
	(check_bus_addresses): Check that LBUS_ADDRESS is specified when
	LBUS_IF is ON.
	(check_mep_core_type): Handle MEP_CORE_C4.
	(check_mep_endian): LITTLE_ENDIAN now allowed only for MeP-c4.
	(verify_dsu): Allow PC_TRACE=ON for MeP-c4.
	(verify_dsp): No default for LBUS_ADDRESS. Don't check value of
	LBUS_SIZE.
	(verify_hw_engine): Likewise.
	(verify_cache): Handle MEP_CORE_C4.
	(verify_dmem): Allow FIXED_START_ADDRESS=YES for MeP-c4.
	(verify_config): No default for LITTLE_ENDIAN.
	* mepcfgtool.h (mep_core_ty): Add MEP_CORE_C4. Change MEP_CORE_H1 to 4.
	* mepcfgtool.c (mep_core_names): Add "c4".
	(mep_mach_names): Add machine corresponding to MeP-c4.
	(do_cpu_config): Handle MEP_CORE_C4.
	(scan_dmem): Don't check core type when checking fixed_start_address.
	(write_ld_header): Change mepcfgtool to MeP-Integrator. Change
	"media module" to "MeP Module".
	(find_ld_imem_dmem): Don't check core type when checking
	fixed_start_address.
	(generate_simulator_script): Pass "DMEM" to sidscr_bool when checking for
	"FIXED_START_ADDRESS".
	(show_copyright): Update copyright year.
	* lex.*.c: Regenerated.
	* parse.*.c: Regenerated.

	2005-01-09  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_cpu_config): Look for
	{begin,end}-extra-csr-registers. Define the $vid registers for MeP-c3
	and MeP-h1.

	2004-12-07  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (verify_local_bus): Allow specification of SIM string.
	(verify_global_bus): Ditto.
	(verify_gbif): Renamed to verify_global_bus_if. No longer checks for a
	name.
	(verify_gbif,verify_lbif): Removed.
	(verify_me_module): No longer allow GBIF and LBIF. Allow GLOBAL_BUS_IF.
	(verify_config): No longer allow GBMIF. Don't ignore GLOBAL_BUS.
	* mepcfgtool.c (do_user_cmodel_includes): Check that cm->include_file
	has been set before using it. Handle cmTypeBusArbitrator. The
	constructor takes no instance name argument.
	(scan_gbifs): Renamed to add_gbif and reworked to handle a single
	cmodel.
	(scan_lbifs): Ditto re: lbif.
	(scan_gbmifs): Ditto re: gbmif.
	(do_sid_gmap_config): Call add_gbmif.
	(do_sidmain_config): Call add_gbif and add_lbif.

	2004-10-22  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (limits.h): #include it.
	(verify_gbif, verify_lbif, verify_gbmif): New functions.
	(verify_me_module): Call check_subnode with verify_gbif and verify_lbif.
	(verify_config): Call check_subnode with verify_gbmif.
	* mepcfgtool.h (cmBusArbitrator): New member of CmodelType.
	* mepcfgtool.c (gbif): New struct type.
	(gbifs_len): New enumerator.
	(gbifs): New table.
	(n_gbifs): New counter.
	(scan_gbifs): New function.
	(lbif): New struct type.
	(lbifs_len): New enumerator.
	(lbifs): New table.
	(n_lbifs): New counter.
	(scan_lbifs): New function.
	(gbmbif): New struct type.
	(gbmifs_len): New enumerator.
	(gbmifs): New table.
	(n_gbmifs): New counter.
	(scan_gbmifs): New function.
	(do_sid_gmap_config): Add gbmif user code.
	(do_sidmain_config): Add gbif and lbif user code.

	2004-10-12  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_toshmep_Makefile_config): Add gbmif.lo to
	libmepfamily_la_OBJECTS. Generate gbmif.P into DEP_FILES.

	2004-09-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_toshmep_Makefile_config): Generate gbif.lo and
	lbif.lo into libmepfamily_la_OBJECTS. Generate gbif.P and lbif.P into
	DEP_FILES.

2005-05-12  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_library_spec): Use '%%' for literal
	percentage signs.

2005-05-09  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_cc_spec): Use '%%' for literal percentage
	signs in calls to fprintf().

2005-05-06  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_driver_option): Change -mfmax-abi to -mfmax.
	(do_config_library_spec): Add an -mfmax-abi => -mfmax rule if the
	chosen configuration has an FMAX coprocessor.

2005-04-22  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_cc_spec): Guard -mno- options.
	(do_config_library_spec): New function.
	(test_module, pass_peripheral_areas, map_cache)
	(do_sid_gmap_config): Adjust for indentation changes in sid.
	(main): Call do_config_library_spec.

2005-04-11  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_cc_spec): Add -mfmax for FMAX configurations.
	(do_config_driver_option): Likewise.

2004-11-30  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (show_copyright): Name the program as "MeP-Integrator".

2004-10-06  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_driver_option): Handle endianness with
	a separate macro, DEFAULT_ENDIAN_SPEC.

2004-09-01  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (verify_sim_extra_config): New function.
	(verify_config): Call check_subnode on SIM_EXTRA_CONFIG.
	* mepcfgtool.c: Change C++ style comments to C style.
	(rebuild_extra): New static variable.
	(find_line): Now returns int to indicate whether the line was found and
	takes a new argument, 'exit_on_error'. Update all callers.
	(end_file): New returns int to indicate whether the file was changed.
	(sid_dir_table): New table fo sid directories which can accomodate
	user written code.
	(add_to_make_variable, remove_from_make_variable) 
	(do_usercode_variable_config, sources_to_lo, sources_to_P) 
	(do_usercode_Makefile_config, do_usercode_config) 
	(do_user_code_includes): New functions.
	(main): Call do_user_code_includes. Print rebuild_extra as part of the
	rebuild instructions.

2004-08-20  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (mep_endian_type): Declare it.
	(check_mep_endian): New static function.
	(verify_core): Do not provide a default for, or check for 'ENDIAN'.
	(verify_config): Provide a default for 'LITTLE_ENDIAN'. Call
	check_mep_endian.
	* mepcfgtool.h (mep_endian_ty): New enumeration.
	* mepcfgtool.c (mep_endian_type): New variable.
	(core_opt_set): Do not accept "little" or "lit".
	(cc_opt_map): Remove "endian" entry.
	(do_config_cc_spec): Skip the first two entries of cc_opt_map.
	(do_config_driver_option): Check mep_endian_type.
	(do_cgen_config_opc): Generate endianness based on mep_endian_type.
	(do_sidmain_config): Ditto.
	(generate_compiler_script): Ditto.
	(generate_simulator_script): Ditto.

2004-08-11  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.h (IS_DRIVE_SEPARATOR): New macro.
	* mepcfgtool.c (resolve_localdir): Check for IS_DRIVE_SEPARATOR. Set
	localdir to the empty string if no separator found.
	(resolve_local_filename): Check for IS_DRIVE_SEPARATOR. Handle the case
	where localdir is the empty string.
	(resolve_source_filename): Check for IS_DRIVE_SEPARATOR.
	(parse_cmodel): Restructure postprocessing to handle all situations.
	Ensure that thiscmodel->base_dir ends with a directory separator if it
	is set.
	(do_user_cmodel_includes): Assume base_dir ends with a directory
	separator, if it is set.
	(main): Correct rebuild instructions.

2004-07-20  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_cpu_config): Add h1 csr registers to h-csr.

2004-06-24  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_gcc_target_h1_selection): New function.
	(main): Call it.

2004-06-24  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (check_mep_core_type): Accept "h1".
	(verify_dsu): Handle PC_TRACE and DATA_TRACE.
	(verify_cache): Handle MEP_CORE_H1.
	(verify_dmem): Handle FIXED_START_ADDRESS.
	(verify_me_engine): Handle TIMEOUT_CYCLE.
	* mepcfgtool.h (MEP_CORE_H1, MEP_CORE_h1): New enumerators.
	* mepcfgtool.c (mep_core_name): New table.
	(mep_mach_names): New table.
	(do_cpu_config): Change 'mach' of 'model' in mep-core.cpu. Include
	mep-h1.cpu, if necessary. Exclude reserved insns used by h1 if
	necessary.
	(do_cgen_config_opc): Generate an entry for the default config. Set
	the cpu flag.
	(scan_dmem): Handle FIXED_START_ADDRESS.
	(process_arcadia_files): Use mep_core_names to generate --core.
	(do_sidmain_config): Use mep_Core_names to generate set_core_type.
	Generate call to dmem_set_fixed _start_address.
	(gen_cgen_core): Pass CGEN_MACH in generated call to CGEN.sh.
	(gen_cgen_cop): Ditto.
	(do_cpu_Makefile_config): Generate CGEN_MACH.
	(map_ld_output_sections): Don't assign vec_warm to data if not
	specified. Generate .vec_warm explicitely only if specified.
	(find_ld_imem_dmem): Handle FIXED_START_ADDRESS.
	(sidscr_bool): Accept a value of "YES" for true.
	(generate_simulator_script): Generate --dmem-fixed-start-address
	option.
	* cfg.y (node): Set a value for negative integers.

2004-06-24  Dave Brolley  <brolley@redhat.com>

	* avc.acd: New version from Toshiba.
	* avc2.acd: New version from Toshiba.

2004-06-24  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (resolve_source_filename): Fix allocation length.

2004-06-24  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (check_cmodel_no_rtl): Make sure class_name has been
	specified.
	(verify_cmodel): Now returns a pointer to the Cmodel if it's ok. Return
	NULL for rtl Cmodels. Set defaults for non-rtl Cmodels here.
	(parse_cmodel): Check the result of verify_cmodel.
	(cmodel_class_is_duplicate): Ignore rtl cmodels.
	(do_toshmep_Makefile_config, do_user_cmodel_includes): Ditto.
	(scan_hw_engines): Check the result of parse_cmodel.
	(scan_ucis, scan_dsps, scan_peripherals): Ditto.
	(scan_dmac): Make sure 'dmac' is allocated contiguously.
	* cmodel.y (new_cmodel): Don't initialize fields here.
	* parse.cmodel.c: Regenerated.
	* parse.cmodel.h: Regenerated.

2004-06-24  Dave Brolley  <brolley@redhat.com>

	* gmap.y (trim_whitespace): Removed. Removed all calls.
	* gmap.l (IDENT): Don't allow blanks.
	* parse.gmap.c: Regenerated.
	* parse.gmap.h: Regenerated.
	* lex.gmap.c: Regenerated.

2004-06-24  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (map_ld_output_sections): Pass hwinit, and
	initialize it if needed.
	(map_ld_memory): Likewise.
	(find_ld_sections): Likewise.
	(do_ld_gmap_config): Coordinate the above.

2004-04-29  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Only call a2cgen once.

2004-04-27  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (context): New name for existing enumeration.
	(parse_cmodel): Set fl_context to fl_none for verify_cmodel.
	* cmodel.l (eof_seen): New static variable.
	(<<EOF>>): New rule for end of file.
	* lex.cmodel.c: Regenerated.

2004-04-26  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c: Use strcmp and upper case when testing for "ON",
	"OFF", "YES", and "NO".
	(assert.h): #include it.
	(currentcfg,corecount,isacount): Declare them.
	(check_string): Now takes argument to specify whether to respect case.
	Update all callers.
	(check_core_id): Don't provide default ID.
	(get_corecount): Moved here from mepcfgtool.c
	(check_corecount_limit): Ditto.
	(check_biu): New function.
	* mepcfgtool.h (check_core_id): Prototype removed.
	(check_corecount_limit): Prototype added.
	(check_biu): Ditto.
	* mepcfgtool.c: Use strcmp and upper case when testing for "ON",
	"OFF", "YES", and "NO".
	(corecount): Now extern
	(isacount): Ditto.
	(get_corecount): Moved to verify-cfg.c.
	(check_corecount_limit): Ditto.
	(do_toshmep_Makefile_config): Don't generate mep-cache.lo into
	libmepfamily_la_OBJECTS. Don't generate .deps/mep-cache.P into DEP_FILES.

2004-04-21  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.h (CModel): New members: rtl_model_type, rtl_module_name,
	num_rtl_files, rtl_base_dir, rtl_include_file.
	* mepcfgtool.c (check_cmodel_irq): New function.
	(check_cmodel_lbus_if): Ditto.
	(check_cmodel_rtl): Ditto.
	(check_cmodel_no_rtl): Ditto.
	(verify_cmodel): Ditto.
	(parse_cmodel): Now takes pointers to the component and containing
	module. Update callers. Call verify_cmodel. Exit if errors.
	(do_toshmep_Makefile_config): Add mep-cache.lo to
	libmepfamily_la_OBJECTS. Add .deps/mep-cache.P to DEP_FILES.
	(generate_simulator_script): Emit $opts before $mem in final command.
	(main): Add instructions for running ./config status in
	sid/component/families/mep.
	* cmodel.y (add_cmodel_rtl_file): New static function.
	(NEWLINE): New token.
	(KWD_RTL_MODEL_TYPE): Ditto.
	(KWD_RTL_MODULE_NAME): Ditto.
	(KWD_RTL_FILES): Ditto.
	(KWD_RTL_BASE_DIR): Ditto.
	(KWD_RTL_INCLUDE_FILE): Ditto.
	(spec): NEWLINE required at the end of each spec and at some points
	in some specs.
	(files): NEWLINE required after 'files:'.
	(int_channels): Ditto
	(file): May be preceeded by newlines.
	(int_channel): Ditto.
	(list_separator): ',' may be preceeeded by newlines.
	(rtl_files,rtl_file,newlines): New rules.
	* lex.cmodel.c: Regenerated.
	* parse.cmodel.[ch]): Regenerated.
	* cmodel.l (WS): Newline no longer a white space.
	(EOL): Return NEWLINE.
	(COM): EOL no longer part of the comment.
	(rtl_model_type): New keyword.
	(rtl_module_name): Ditto.
	(rtl_files): Ditto.
	(rtl_base_dir): Ditto.
	(rtl_include_file): Ditto.

2004-04-08  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Define __section and
	mep_nop in the otherwise-empty <me_module>.h file.

2004-04-08  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (clear_cop): ONly turn off warn_all when checking IP.
	(verify_cop): Only provide default nodes if IP not specified.
	* mepcfgtool.c (map_ld_memory): 'ram' argument is now a pointer to a
	pointer.
	(map_ld_memory): Make sure the RAM section is at least 0xb8 in size
	before allocating VEC_WARM to it. Remove RAM section if VEC_WARM uses
	it completely.
	(do_ld_gmap_config): Pass &ram to map_ld_memory.

2004-04-01  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (srcdir): Removed.
	(check_arcadia_isa): Reworked to match customer expectations.
	(get_dmem_size): New static function.
	(verify_cop): Don't call check_string or ignore_node sfor "SIM" here.
	(verify_dsp): Ditto. Check DMEM_IF_WIDTH.
	* mepcfgtool.h (mep_core_ty): Hardcode the values for the cores.
	* mepcfgtool.c (dsps): New member: dmem_if_width.
	(scan_dsps): Set dmem_if_width.
	(do_sidmain_config): Generate a call to set_core_type. Generate calls
	to set{i,d}cache_cwf. Pass dmem_if_width to add_dsp and
	add_toshapi_dsp.
	(generate_simulator_script): Generate --icache-line-size, --icache-way
	and --icache-cwf options as necessary. Same for dcache.
	* cmp-cfg.c (compare_configs): Call match_subs for MEP_CORE_TYPE.

2004-03-30  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (srcdir): Declare it.
	(mep_core_type): Declare it.: 
	(check_string): Noew returns the Node containing the string, if found.
	(check_mep_core_type): New static function.
	(verify_main_bus_if): Call check_string and ignore_node for "IP".
	(verify_global_bus, clear_cop, process_cop_ip): New static functions.
	(verify_cop): Call check_string for "IP". Call process_cop_ip. Call
	check_int_list for "DMEM_IF_WIDTH".
	(verify_hw_engine): Call check_int_range for "NUMBER". Check "ACDB" but
	ignore it.
	(verify_cache): New static function.
	(verify_dcache): Set defaults for "LINE_SIZE" and "WAY". Call
	verify_cache.
	(verify_icache): Ditto.
	(verify_me_module): Call check_string and ignore_node for "CLK_CTRL".
	(verify_config): Call check_mep_core_type. Call check_string and
	ignore_node for "MMNAME_TO_RTL" and "GLOBAL_BUS".
	* mepcfgtool.h (mep_Core_ty_: New enumerated type.
	(resolve_source_filename): New prototype.
	* mepcfgtool.c (srcdir): No longer static.
	(toshapi_version): New static variable.
	(mep_core_type): New extern variable.
	(usage): Document '--api' option.
	(resolve_source_filename): New function.
	(process_arcadia_files): Pass --api to a2cgen. Pass --core option to
	a2cgen for DSP processing.
	(do_sidmain_config): Generate calls to
	set_{icache,dcache}_{way,line_size}. No match for IRQ entry is now an
	error.
	(main): Handle the --api option.
	* avc.acd: New file.
	* avc2.acd: New file.

2004-03-24  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_toshmep_Makefile_config): New static function.
	(do_user_cmodel_includes): Don't inline cmodel headers into toshapi.h
	or cmodel sources intoshapi.cxx. Generate individual .cxx files in
	sid/component/families/mep which include ther cmodel sources directly.
	Update sid/component/families/mep/Makefile.{am,in}.

2004-03-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (check_irq_range): Don't check for DMAC conflicts if
	there is no DMAC.

2004-03-09  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (unsupported_node): New static function.
	(verify_physical_cfg): Call default_string and check_string for "DATA0"
	and "DATA1".
	(verify_me_engine): Call unsupported_node for "DSU".
	* mepcfgtool.c (dump): Make sure 'c->id' is set before using it.
	(timer_channel_bitw, dmac_channel_bitw): New static functions.
	(add_node): Don't initialize b->next to 0. It gets set again right
	away.
	(irg_node): New member of irq_t.
	(scan_irq): Initialize irq_node.
	(check_irq_range): New static function.
	(do_sidmain_config): Use timer_channel_bitw. Call check_irq_range.
	(generate_simulator_script): Use timer_channel_bitw.
	(read_in_config_file): Set currentcfg->lineno to the number of lines in
	the file.
	(main): Exit with EXIT_FAILURE before printing rebuild instructions if
	there are errors.
	* gmap.y (trim_whitespace): New static function.
	(name): Use trim_whitespace on STR.
	(cache): Ditto.
	(shadow): Ditto.
	(scope): Ditto.
	(type): Ditto.
	(access): Ditto.
	* cmp-cfg.c (new_config): New static variable.
	(unmatched): Use new_config for coordinates. Print the 'val' of the
	node if it's set.
	(compare_configs): Set new_config.
	* lex.gmap.c: Regenerated.
	* parse.gmap.c: Regenerated.

2004-02-24  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Make sure that extra_opts is
	always 	terminated before using strcat.

2004-02-23  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_script_start): Always generate the 'mydir'
	variable.
	(gmap_options): Make sure that gmap_buffer is always terminated before
	using strcat.

2004-02-23  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (check_unexpected): Remove unexpected nodes.
	* mepcfgtool.c (irq_type_t): Remove irq_dmac.
	(scan_irq): No need to check irq for reallocation.
	(scan_irq_for_dmac): Removed.
	(process_arcadia_files): No need to free irq or set it to NULL.
	(do_sidmain_config): Move call to scan_irq to after scan_peripherals.
	Don't generate 4th argument to add_dmac. Reorganize logic to check for\
	'mod' only once per loop. Check for unmatched IRQ entries when
	finished.
	(generate_simulator_script): Don't generate --dmac-irq or dmac-no-irq.

2004-02-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (parse_any_gmap): Don't check 'errors' until more
	checks have been performed.
	(generate_script_end): Add options to the 'opts' variable.
	(generate_compiler_script): Add options to the 'opts' variable.
	(gmap_options): New function.
	(generate_simulator_script): Add options to the 'opts' variable.
	Add global memory settings to the 'mem' variable so that they are
	only generated once. Output $mem before $opts.
	(main): Don't check 'errors' until more checks have been performed.
	* cmp-cfg.c (unmatched): Change message to say "removing %s is not
	allowed. Set node as counted.
	(added): New static function.
	(match_subs): Call 'added' for new items.
	(strict_compare): Call 'unmatched' for removed items.

2004-02-18  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (parse_any_gmap): Provide the correct default gmap.

2004-02-17  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-reinstall-utils): Depend on mep-config-stmp.
	* mepcfgtool.c (generate_script_start): Location of the original
	tools is <instdir>/bin when -o is specified.
	(process_arcadia_files): Generate --warn-all when calling a2cgen if
	it is specified for MeP-Integrator. Return immediately if 'nobuild'.
	Reflow to remove multiple checks of 'nobuild.

2004-02-10  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (warn_all): Declare it.
	(toshapi): Declare it.
	(ignore_node): New static function.
	(verify_peripheral): Do not create defaults for nodes which will be
	ignored. Call ignore_node for nodes which are not used.
	(verify_main_bus_if, verify_dmac, verify_cop, verify_dcache) 
	(verify_dmem, verify_icache, verify_imem, verify_me_engine) 
	(verify_me_module, verify_config): Ditto.
	(verify_biu): Remove dw and computations using it, since the result
	is not used.
	* mepcfgtool.c (warn_all): New extern variable.
	(toshapi): No longer static.
	(show_copyright): Update copyright years.
	(usage): Document --warn-all.
	(main): Handle --warn-all.

2004-02-04  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (outdir): New static variable.
	(usage): Document '-o' option.
	(absolute_filename): New static function.
	(process_arcadia_files): Use absolute_filename.
	(generate_script_start): If outdir is not the same buffer as instdir,
	generate a call to the original tools using instdir.
	(generate_compiler_script): Generate the script in outdir.
	(generate_simulator_script): Ditto.
	(main): Handle '-o' option. Use xmalloc. Append config name to outdir,
	if specified, otherwise use instdir and set outdir to the same buffer.
	Generate scripts relative to outdir.

2004-01-30  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (verify_sim_option_file): New static function.
	(verify_config): Call check_node for SIM_OPTION_FILE.
	* mepcfgtool.c (generate_simulator_script): Make room in gmap_buffer
	for the closing quote.

2004-01-29  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Search all ME_MODULEs for IRQ
	specs related to this one.

2004-01-27  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (toshapi): Initialize to 1.

2004-01-26  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Generate
	--timer-channel-bitw

2003-12-16  Dave Brolley  <brolley@redhat.com>

	* cmodel.y (libiberty.h): #include it.
	(new_cmodel): Initialize g->files_size, g->num_files, g->files,
	g-> ints_size, g->num_ints, g->int_keys, g->int_channels;
	(add_cmodel_file): Grow currentcmodel->files as necessary.
	(add_cmodel_interrupt): Grow currentcmodel->int_keys and
	currentcmodel->int_channels as necessary.
	* mepcfgtool.h (MAXPARTS): Removed.
	(files_size): New member of struct Cmodel.
	(ints_size): Ditto.
	(files): now a pointer.
	(int_keys): Ditto.
	(int_channels): Ditto.
	* lex.cfg.c: Regenerated.
	* lex.cmodel.c: Regenerated.
	* lex.gmap.c: Regenerated.
	* parse.cfg.c: Regenerated.
	* parse.cmodel.c: Regenerated.
	* parse.gmap.c: Regenerated.
	* parse.cfg.h: Regenerated.
	* parse.cmodel.h: Regenerated.
	* parse.gmap.h: Regenerated.

2003-12-10  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_script_end): Generate code to handle
	arbitrary options in two steps. This works around a solaris problem.

2003-11-26  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (.PHONY): Fix typeo: mep-install-gdb -> mep-reinstall-gdb.
	(mep-reinstall-utils): Depend on installdirs.
	(all-sid): Depend on mep-reconfig-opcodes, not all-opcodes.
	(install-opcodes): New target.

2003-11-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_cgen_config_opc): Generate
	CGEN_INSN_OPTIONS_CP64_INSN for modules with 64 bit coprocessors.

2003-11-17  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Add nul byte to the end of the
	generated --lmem option.

2003-10-30  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-reinstall-sid): Install sid/component/cgen-cpu and
	sid/component/families/mep to allow for dynamic libraries.
	(install-bfd): Depend on all-bfd.

2003-10-29  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (acdb_scan_dsps): Return LBUS_IF node if found.
	(process_arcadia_files): Call resolve_local_filename on acd->val.

2003-10-24  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-reconfig-opcodes): Depend on configure-opcodes.
	(mep-reconfig-sid): Depend on configure-sid.
	(mep-reinstall-sid): Ditto.
	(mep-reconfig-gcc): Depend on configure-gcc.
	(mep-rebuild-gcc): Ditto.
	(mep-reinstall-gcc): Ditto.
	(mep-reinstall-gdb): Depend on configure-gdb
	(mep-reinstall-utils): Depend on configure-utils.

2003-10-23  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (gen_cgen_core): Double backslashes before '$'.
	(gen_cgen_cop): Likewise.

2003-10-22  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (gen_cgen_core): Add .cpu file to CGEN.sh invocation.
	(gen_cgen_cop): Likewise.

2003-10-16  DJ Delorie  <dj@redhat.com>

	* Merge from branch.

2003-08-20  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Generate --dmac-irq or --dmac-no-irq.

2003-08-20  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (generate_script_end): Special case echo options -e,-E,-N 

2003-08-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (read_in_config_file): Print config file name when open fails.

2003-08-18  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (start_linker_script): Adjust linker_scripts realloc.
	(read_in_config_file): Initialize cfglineno.

2003-08-14  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Do gmap handling once
	for all boards.

2003-08-12  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Don't change config if nobuild.
	(dump): Skip ISA_DEFINE/SIM lines added after ACDB.
	(add_node): Initialize filename and lineno.
	
2003-08-11  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Reset extra_opts at end of loop.

2003-08-08  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Don't call a2cgen if 'nobuild'
	is set.
	* gmap.y (gmap_error): New static variable.
	(check_global_shadow_access_and_range): Check for shadows whose
	original regions are also shadows.
	(check_gmaps): Remove 'error'. Check 'gmap_error'.
	* parse_gmap.c: Regenerated.

2003-08-07  Dave Brolley  <brolley@redhat.com>

	* gmap.y (ignore_gmap): Ignore shadows of reserved areas.
	(check_global_shadow_access_and_range): Ignore shadow mappings which
	only partially overlap a real region. Inherit the access rights of the
	real region. Issue a warning for a conflict. Warn about shadow regions
	which don't cover any real region. Return new head of g=the gmap list.
	(access): default is 'defaccess' Checked later and changed to readwrite.
	* parse_gmap.c: Regenerated.

2003-08-07  Stan Cox  <scox@redhat.com>

	* cmodel.l (NAME): Allow "-".
	* lex.cmodel.c: Regenerated.

2003-08-06  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (map_ld_memory): Output all rejected regions as comments.
	(find_ld_sections): Allow space beyond VEC to be used for another region. For
	all RAM ranges, prefer the largest and then lowest address.
	* gmap.y (check_global_shadow_access_and_range): Fix typos g->start -> g_start.
	Increment g->shadow when splitting off prefix range.
	(check_gmaps): Don't check for overlap of real regions of shadows.
	* parse_gmap.c: Regenerated.

2003-08-06  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Don't create header if --nobuild

2003-08-01  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (acdb_scan_dsps): New.
	(process_arcadia_files): Use it instead of scan_dsps.

2003-07-31  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (parse_any_gmap): Provide a default gmap if
	none specified. Check for existence of modules specified on
	local shadows.
	(map_ld_stack_and_heap): Parameter renamed to 'section'.
	(map_ld_output_section): 'gmap' parameter renamed to 'section'.
	Generate __stack_end into the same section as the stack table.
	(map_ld_output_sections): New parameters: vec, vec_warm, imem
	and dmem. ROM defautlts to IMEM0l if it exists. Code goes into
	RAM, if specified, otherwise IMEM0. Data goes into RAM if 
	specified, otherwise tinto DMEM0, otherwise to same section
	as code. Map DATA-section, CODE-section, ROM-section
	VEC-section and VEC_WARM-section. Call map_ld_stack_and_heap.
	(map_ld_memory): Assign a region for VEC_WARM. Output VEC,
	VEC_WARM regions. Output rejected ROM regions as comments.
	Output IMEM and DMEM regions.
	(find_ld_sections): Find a region for VEC. New ruls for ROM.
	Extended rules for RAM.
	(find_ld_imem_dmem): Don't outpu IMEM and DMEM regions here. Just
	add them to a list of Gmap.
	* mepcfgtool.h (new_gmap): Now extern.
	* gmap.y (assert.h): #include it.
	(ignore_gmap): New function.
	(new_gmap): Only allocate the gmap here. No checking.
	(check_local_shadow_range): New function.
	(check_global_shadow_access_and_range): New function.
	(CACHE_MAP_RECORD): New type.
	(check_gmaps): Check for overlapping shadows. Check cache
	settings.
	* parse_gmap.c: Regenerated.

2003-07-22  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Generate --biu-width
	option.

2003-07-17  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (generate_simulator_script): Generate --local-mem,
	--global-mem and --shadow-mem addresses in hex.

2003-07-17  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (scan_dmac): Call mep_strtok_r instead of strtok_r.

2003-07-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Generate readonly argument of
	MepMemRegionCfg.
	(generate_simulator_script): Generate 'rom' suboption of --global-mem
	as necessary.

2003-07-14  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (gen_user_cpu): Generate core_model_step_latency.

2003-07-11  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (sidscr_bool): Correct sense of string comparison.
	(generate_simulator_script): Generate 'api' suboption of --local-mem
	as necessary.

2003-07-09  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (.PHONY): Add mep-reinstall-utils.
	(mep-reinstall-utils): New target.
	* mepcfgtool.c: (ICACHE_LINES_ADDRESS): Removed.
	(ICACHE_TAGS_ADDRESS): Removed.
	(DCACHE_LINES_ADDRESS): Removed.
	(DCACHE_TAGS_ADDRESS): Removed.
	(allocate_cache): Removed.
	(map_cache_test_area): Removed.
	(map_cache): Remove 2nd and subsequence parameters. Need only pass the
	peripheral areas now.
	(do_sid_gmap_config): Generate code to allocate MepMemRegionCfg for
	global memory. Generate code to allocate MepShadowRegion for shadows.
	(do_sid_gmap_config): Remove code to generate global memory and shadow
	mappings. Call map_cache with new interface.
	(do_sidmain_config): Generate 'toshapi' argument for local mem as
	necessary.

2003-07-09  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.h (compare_configs): Declare.
	* cmp-cfg.c: New.
	* Makefile.in (install): Copy current config to install directory
	if it exists.
	* mepcfgtool.c: Use EXIT_FAILURE consistently.
	(instdir): New variable to hold the installation directory.
	(usage): Update to include Bin-Integrator info.
	(dump): Pass file as argument also.
	(core_opt_set): Make opt const.
	(template_name): Make const.
	(mkdir_p): New.
	(start_file): Handle absolute paths properly.  Pass base directory
	as argument, to allow use for both srcdir and exec_prefix.  Update
	all callers.
	(linker_script_path, linker_script_default): Make these variables
	so we can override them.
	(start_linker_script): Pass base directory.  Handle linker paths
	as variables.  Handle absolute paths correctly.
	(process_arcadia_files): Don't process arcadia files in
	bin-integrator mode.
	(cc_opt_map): Expand to include info for bin-integrator mode.
	(do_config_cc_spec): Account for updated cc_opt_map.
	(do_ld_gmap_config): Don't update Makefile.in in bin-integrator mode.
	(generate_script_start): New.
	(generate_script_end): New.
	(make_executable): New.
	(generate_compiler_script): New.
	(sidscr_bool): New.
	(sidscr_parm): New.
	(generate_simulator_script): New.
	(file_exists_p): New.
	(read_in_config_file): New. Broken out from main.
	(main): Support -i and --nobuild options.  Locate instdir
	if needed.  Break out cfg parser to read_in_config_file.  Split
	src-mode calls from bin-mode calls.

2003-06-26  Dave Brolley  <brolley@redhat.com>

	* gmap.y: Rename shadow_address_specified to shadow_specified.
	(new_gmap): Don't override type. Don't reset shadow_specified. Set
	g->shadow_specified.
	* mepcfgtool.c: Revert change of 2003-06-17. Test
	gmap->shadow_specified instead of gmap->shadow.
	* mepcfgtool.h (shadow_specified): New member of Gmap.
	* lex.cfg.c: Regenerated.
	* parse.cfg.[ch]: Regenerated.
	* parse.gmap.c: Regenerated.

2003-06-25  Dave Brolley  <brolley@redhat.com>

	* gmap.y (new_gmap): Reset shadow_address_specified.
	(shadow): Set shadow_address_specified to 0 if the field is empty.
	* parse.gmap.c: Regenerated.

2003-06-17  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): No longer need to test
	gmap->shadow.
	* gmap.y (shadow_address_specified): New static variable.
	(new_gmap): Rename 'shadow' parameter to 'shadow_spec'. Test
	shadow_address_specified and set the type to 'shadow' if true.
	(shadow): Set shadow_address_specified.
	* parse.gmap.c: Regenerated.

2003-06-10  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (gen_user_cpu): Generate model_before method.
	Generate arguments for SCACHE template parameter for mep_common_model
	methods.
	(gen_mep_model_fn_instantiation): Generate arguments for SCACHE
	template parameter for mep_common_model methods.
	(gen_core_model_fn_instantiation, gen_cop_model_fn_instantiation): Ditto.
	(gen_sid_model_instantiations): Look for SCACHE in template header. Generate
	instantiation for any method found.

2003-06-05  DJ Delorie  <dj@redhat.com>

	* verify-cfg.c (verify_local_mem): Update to 030604 spec.

2003-05-30  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_config_link_spec): New, adds -T.
	(do_config_driver_option): Don't add -T.
	(main): Call do_config_link_spec.

2003-05-29  Dave Brolley  <brolley@redhat.com>

	* verify-cfg.c (check_for_file): Declare filename as const char *.
	* mepcfgtool.h (resolve_local_filename): New prototype.
	* mepcfgtool.c (do_user_cmodel_includes): Generate #undef
	USER_LOG_DISABLE before each cmodel fragment.

2003-05-28  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_extra_headers): Fix typo.

2003-05-27  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_extra_headers): Add intrinsics.h.

2003-05-23  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Clear previous contents of
	module headers.
	(do_user_cmodel_includes): Clear previous contents of blank headers.

2003-05-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Create empty header
	gcc/config/mep/<module_name>.h if no coprocessor or ACDB specified.

2003-05-09  Anthony Green  <green@redhat.com>

	* mepcfgtool.c (scan_irq): Call mep_strtok_r instead of strtok_r.
	(mep_strtok_r): New function.
	(mep__strtok_r): New function.

2003-05-09  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (do_sidmain_config): add_irq now uses the instance name.

2003-05-09  Anthony Green  <green@redhat.com>

	* mepcfgtool.c (scan_irq): Use the more widely available strtok_r
	instead of strsep.
	(find_line): Print (null) in case of NULL `contains'.

2003-05-08  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Generate code to set the
	base-address attribute of global memory regions.

2003-05-08  Stan Cox  <scox@redhat.com>

	* verify-cfg.c (check_for_file):  New.
	(check_arcadia_isa): Use it.
	* mepcfgtool.c (resolve_config_filename): Make extern.

2003-05-07  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (process_arcadia_files): Check system() exit status.

2003-05-07  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (parse_cmodel): Allow cmodels using the same cmodel
	file.
	(cmodel_class_is_duplicate): New function.
	(do_user_cmodel_includes): Don't include the same cmodel class more
	than once. Pass cm->instance name to all add_toshapi_* functions.
	(do_user_cmodel_includes): Don't generate destructor calls to the
	same class more than once.
	(do_sid_gmap_config): Pass cm->instance name to all add_toshapi_*
	functions.
	(do_sidmain_config): Ditto. signal and instance now const char*.
	(irq_t): char* fields now const char*.
	(map_ld_memory): ROM can be 'r' or 'w' depending on gmap specification.
	(find_ld_rom_ram): ROM does not have to be readonly. RAM can be a
	shadow. Update message for when no ROM is identified.
	(do_hw_engine_includes): Clear previous config even if toshapi.
	(do_peripheral_includes): Ditto.

2003-05-06  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (scan_irq): Don't allocate irq if no IRQ.

2003-05-02  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-reconfig-opcodes, mep-reconfig-sid)
	(mep-reconfig-gcc): No longer PHONY and no longer depend on all-cgen.
	* mepcfgtool.c (CORECOUNT_LIMIT): Removed.
	(isacount): New static variable.
	(read_line): New function.
	(find_line): Use read_line.
	(get_corecount): Compute isacount.
	(do_gcc_isas): New function.
	(generate_define_isa): New function.
	(do_cpu_config): Generate isa-enum, define-isa, all-mep-isas,
	all-mep-core-isas, all-core-isa-list.
	(do_user_isa_includes): Include all custom frags into mep-ext-cop.cpu.
	(gen_user_cpu): New function.
	(do_user_cpu_config): New function.
	(gen_isa_masks): Now takes module and isa_start. Generates only the
	configured isa masks.
	(do_cgen_config_opc): New function.
	(do_mm_int_max_config): New function.
	(do_compCGEN_config): New function.
	(gen_mep_model_fn_instantiation, gen_core_model_fn_instantiation) 
	(gen_cop_model_fn_instantiation, gen_sid_model_instantiations) 
	(do_sid_model_config, gen_cgen_core, gen_cgen_cop) 
	(gen_Makefile_in_only_config, do_cpu_Makefile_config): New functions.
	(map_ld_output_sections): Use read_line.
	(main): Call do_cpu_config, do_cgen_config_opc, do_cgen_config_opc,
	do_mm_int_max_config, do_compCGEN_config, do_sid_model_config,
	do_cpu_Makefile_config, do_user_cpu_config. Add instructions for
	rebuilding sid/component/cgen-cpu/mep/Makefile.

2003-05-01  DJ Delorie  <dj@redhat.com>

	* verify-cfg.c (verify_local_mem): Don't default ADDRESS and SIZE,
	require LOCAL_MEM be in 0x60_0000..0x6f_ffff.
	* cfg.l: Allow one-character instance names.
	* lex.cfg.c: Regenerate.
	
2003-04-30  Stan Cox  <scox@redhat.com>

	* mepcfgtool.c (scan_irq, scan_irq_for_dmac, check_irq_mod): New.
	(do_sidmain_config): Add call to add_irq_board.  Call
	scan_irq_for_dmac and pass result to add_dmac.  Set have_irq
	attribute.  Add processing for add_irq.

2003-04-29  Richard Sandiford  <rsandifo@redhat.com>

	* mepcfgtool.c (do_config_coproc_selection): Change the isa field
	from a string to a bitmask.

2003-04-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (map_ld_memory): Generate IMEM* and DMEM* MEMORY regions
	in the the linker script.
	* gmap.y (new_gmap): Check for and reject reserved memory ranges.
	(check_gmaps): New function.
	(file): Call check_gmaps.
	(gmaps): Allow for $1 to be NULL.
	(parse.gmap.[ch]): Regenerated.
	(lex.gmap.[c]): Regenerated.

2003-04-15  DJ Delorie  <dj@redhat.com>
	
	* Makefile.in: Add verify-cfg.[co]
	* verify-cfg.c: New.  Verify configuration.
	* mepcfgtool.c: Add new error functions.
	(push_node): Fix logic.
	(dump): Use node->type.
	(find_typed_sub): New.
	(check_data_width): Remove.
	(check_consistency): Remove.
	(parse_cmodel): Set context for error messages.
	(cpu_fname_from_arcadia_fname): New.
	(find_a2cgen): New.
	(process_arcadia_files): New.
	(do_extra_headers): New, with support variables.
	(parse_any_gmap): Set context for error messages.
	(main): Enable cfgdebug if verbose enough.  Set
	context for error messages.  Verify configs.
	Call do_extra_headers.  Tweak rebuild info so that
	it's cut-n-pasteable.
	* mepcfgtool.h: Add relevent prototypes.
	(Node): Replace "had_error" with "counted".
	Add type, and defines for it.
	* cfg.l: Remove support for individual word tokens.  Detect
	unterminated strings.  Pass unexpected punctuation to cfg.y.
	(extend): Handle initial state better.
	(var): Use new error functions.
	* cfg.y: Remove all verification code (moved to verify-cfg.c).
	Remove support for individual word tokens (rely on verify-cfg.c).
	(new_node): Export.
	(new_idnode, new_intnode, new_strnode, new_togglenode): Remove.
	(intnode, strnode, wordnode, subnode): New.
	(cfgerror): Try to print a more useful message.
	* lex.cfg.c: Regenerate.
	* parse.cfg.h: Regenerate.
	* parse.cfg.y: Regenerate.

2003-04-13  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (parse_cmodel): Make relative base_dir relative to the
	location of the cmodel file. Now takes a cmodel type and an
	instance name as arguments. Set thiscmodel->type and
	thiscmodel->instance_name.
	(do_user_cmodel_includes): Create blank versions of all files listed
	in the cmodel. Copy contents of these files into toshapi.h. Pass cmodel
	arguments to the constructors. Define constructors for toshapi local
	memory. Keep pointers to each constructed object and construct them
	as they are referenced.
	* mepcfgtool.h (CmodelType): New enumeration.
	(CModel): New members: type and instance_name. cfg_args now
	const char *.
	(scan_hw_engines): Set cmodel->cfg_args.
	(scan_dsps): Ditto.
	(scan_peripherals): Ditto.
	(do_sid_gmap_config): Clear previous peripheral config.
	(emit_dmac_hw_req): New function.
	(do_sidmain_config): Call it.
	* cmodel.l: Allow NUM to start with any digit. 
	(var): New function.
	(NAME): Allow it to start with _, . or /.
	(NM): New state.
	(V): New pattern.
	(VC): New pattern.
	(STR): Allow it to start with an environment variable.
	* cmodel.y (new_cmodel): Initialize g->type.
	(intchannels): Comma must separate members of this list.
	* cfg.y (verify_dmem): Default for DMEM.BANK_NUM should be 2.
	* cfg.l (match_id): hw_req indexing was off by one.

2003-03-03  Stan Cox  <scox@redhat.com>

	* rebuild.mk (mep-config-stmp): Add MPIFLAGS.

2003-02-27  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Generate call to
	add_toshapi_peripheral when necessary.
	(do_sidmain_config): Integrate dmac before hw_engines.

2003-02-17  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Only enable RECTANGLE for DMAC if
	it is specified as "on".

2003-02-13  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_user_isa_includes): Remove existing isa
	information from files which have no uci, dsp or cop.
	(map_ld_memory): Don't generate RAM memory region if it is
	the same as the ROM.
	(find_ld_rom_ram): Use RAM as ROM if ROM not specified and
	vice versa.

2003-02-11  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (find_ld_rom_ram): Prefer regions in the range
	0x800000-0xffffff for the RAM region rather than requiring
	it be in that range.
	(do_sid_gmap_config): Don't map shadow regions.

2003-02-10  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (start_file): Create a new file if template_name
	does not exist.
	(end_file): Restore code which handles creation of a new file
	when the template file does not exist.

2003-02-10  Bernd Schmidt  <bernds@redhat.com>

	* mepcfgtool.c (throughout): Replace calls to abort with calls to
	exit (FAILURE).

2003-02-06  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.h (MAX_CORE_ID): New macro.
	* cfg.y: Use MAX_CORE_ID instead of hardcoded constants.
	(core_ids_in_use): Remove 'static' qualifier.
	(max_core_id): Rename to next_core_id. Remove 'static' qualifier.
	* mepcfgtool.c (core_ids_in_use): Declare it.
	(next_core_id): Declare it.
	(start_file): Add parameter, 'template_filename'. Allow updating
	or creation of 'filename' from 'template_filename'
	(start_linker_script): Use new parameter of 'start_file' to create or
	update linker scripts based on LINKER_SCRIPT_DEFAULT.
	(files_differ): Handle case of identical filenames.
	(end_file): Handle creation of new file..
	(map_ld_stack_and_heap): Generate stack table in the linker script
	for a given module.
	(write_ld_header): Remove incorrect comment about MeP-Integrator
	customizing the generated script.
	* lex.cfg.c: Regenerated.
	* lex.cmodel.c: Regenerated.
	* lex.gmap.c: Regenerated.
	* parse.cfg.c: Regenerated.

2003-02-04  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Recognize shadow region if
	shadow address is supplied.

2003-01-28  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (create_default_me_engine): Removed. Now done in
	check_me_engine.
	(check_me_engine): Create defaults for subsections of ME_ENGINE whether
	ME_ENGINE was specified or not.

2003-01-28  Bernd Schmidt  <bernds@redhat.com>

	* test.cfg: Remove obsolete parts.

	* cfg.l (in_brackets): New variable.
	(note_punct): New function.
	(struct id_def): New.
	(DEF_ID): New macro.
	(id_table): New variable.
	(match_id): New function.
	(lexer part): Call match_id for identifiers.  Call note_punct when
	seeing a PUNCT character.
	* cfg.y: Include <stdarg.h>.
	(core_ids_in_use, max_core_id): New variables.
	(new_node): Constify NAME arg.  Record filename and line number; clear
	HAD_ERROR member.
	(new_idnode, new_intnode, new_strnode, new_togglenode): New functions.
	(check_for_duplicates, check_int_param, verify_string_present,
	default_toggle, verify_hw_engine, verify_dsp, verify_uci, verify_cop,
	verify_dsu, verify_lmem, verify_imem, verify_dmem, verify_icache,
	verify_dcache, verify_mbus_if, verify_irq, verify_timer,
	verify_config, verify_peripheral, verify_physcfg, verify_dmac,
	verify_lbus, verify_core, verify_biu, verify_intc, verify_me_engine,
	verify_me_module, verify_mm_int, initialize_parser): New functions.
	(parser part): Rewritten to actually check the syntax and to call
	the new verification functions.
	* mepcfgtool.c (find_sub, find_next): No longer static.
	(struct hw_engine, struct dsp, struct hw_peripheral): Constify some
	members.
	(upcase): Constify STRING arg.
	(parse_any_gmap, do_sidmain_config): Update for constifications.
	* mepcfgtool.h (struct name_and_num, struct Gmap, struct Node):
	Constify some members.
	(struct Node): Add FILENAME, LINENO and HAD_ERROR members.
	(find_sub, find_next): Declare.

2003-01-23  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (*): Wherever sizeof() is used as a malloc argument,
	use full struct tag to identify a type instead of some variable that
	might be lying around.

2003-01-23  Dave Brolley  <brolley@redhat.com>

	* rebuild.mk (mep-config-stmp): Use -v on when calling the integrator.
	(mep-reinstall-gcc): Make install-driver.
	(mep-rebuild-gcc): Make gcc-cross so that install-driver will install
	the correct executable.
	* mepcfgtool.c (do_user_isa_includes): Keep track of how many modules
	get processed and clear the config of the remaining modules based on
	that number.

2003-01-20  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Handle lbus_if dsp & hw_engine.
	* cmodel.l (STR, QSTR): Rewrite lexing pieces.
	* lex.cmodel.c: Regenerated.

2003-01-16  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (scan_mm_int): Set mm_int.specified inside the loop.

2003-01-13  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (mm_int) New static struct.
	(scan_mm_int): New function.
	(do_sidmain_config): Generate call to b->map_mm_int.

2002-12-18  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (include_file): Don't call resolve_local_filename
	if the given name is already fine, to help cmodel-related searches.

2002-12-16  Frank Ch. Eigler  <fche@redhat.com>

	toshapi support, cmodel parsing, warning cleanups.
	* cmodel.l, cmodel.y: New files for parsing cmodel_info files.
	* mepcfgtool.c: Removed a bunch of #if-0 code.  printf warning
	cleanup throughout.  Standardize use of stderr for tracing messages.
	(usage): Document new "-a" (toshapi) flag.
	(parse_cmodel, do_user_cmodel_includes): New functions.
	(scan_ucis, emit_intc_setup): New functions.
	(do_user_isa_includes): Reorder operations to avoid spurious file
	changes.
	(do_sidmain_config): Support toshapi.
	(start_file, end_file): Support creation of new files.
	* mepcfgtool.h (CModel): New struct.
	* lex.*, parse.*: Regenerated/new files.
	* cfg.l: Warning cleanups.
	
2002-12-13  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (CORECOUNT_LIMIT): New macro.
	(check_corecount_limit): Use CORECOUNT_LIMIT.
	(do_user_isa_includes): Loop from 1 to corecount.
	(set_isa_mask_bit): New function.
	(clear_isa_mask_bit): Ditto.
	(print_isa_mask): Ditto.
	(gen_isa_mask): Ditto.
	(gen_isa_masks): Ditto.
	(do_cgen_config_map): Call gen_isa_masks.

2002-12-02  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_hw_engine_includes): Generate pointers for hw_engine
	destructors as hw<i> for integers <i>.
	(do_peripheral_includes): Generate pointers for peripheral destructors
	as p<i> for integers <i>.

2002-11-20  D. Marlin  <dmarlin@redhat.com>

        * mepcfgtool.c - Modified to add a default ME_ENGINE to the tree
	for each ME_MODULE, if one wasn't configured.
	(add_first): New function.
	(add_node): New function.
	(create_default_me_engine): New function.
	(check_me_engine): New function.
	(main): Added a call to check_me_engine.

2002-11-22  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (check_data_width): New function.
	(check_consistency): Ditto.
	(do_sidmain_config): Generate configury for BIU.
	(main): Call check_consistency.

2002-11-21  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_hw_engine_includes): Account for 5 permanent mep
	family classes.
	(do_peripheral_includes): Ditto.
	(do_sidmain_config): Add the timer to the config, if specified.

2002-11-20  D. Marlin  <dmarlin@redhat.com>

        * mepcfgtool.c (do_sidmain_config): Added back the HANDLE_PARAM_I
	macro reference for dmem bank_num after correcting regressions in the 
	MCR tests.

2002-11-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Check that each COP has a name.
	Generate a call to add_cop instead of set_opt_cp and pass the cbus_if
	setting, if specified.
	
2002-11-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (dsp): New struct type.
	(scan_dsps): New function.
	(do_sidmain_config): Incorporate memory interface for any DSPs defined
	by this module. Don't use SET_OPT_IF to configure DSPs any longer.

2002-11-15  D. Marlin  <dmarlin@redhat.com>

        * mepcfgtool.c (do_sidmain_config): Temporarily remove the 
	HANDLE_PARAM_I macro reference for dmem bank_num.  It introduced
	regressions in the MCR tests.

2002-11-15  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (corecount): New static variable.
	(get_corecount): New function.
	(check_corecount_limit): Use get_corecount and corecount.
	(do_mm_int_config): New function.
	(main): Call do_mm_int_config.

2002-11-08  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (find_next): New function.
	(check_corecount_limit): Use find_next.
	(do_config_cc_spec): Ditto.
	(do_config_driver_option): Ditto.
	(do_config_coproc_selection): Ditto.
	(do_cpu_config_attr): Ditto.
	(do_user_isa_includes): Ditto.
	(scan_hw_engines): Ditto.
	(do_cgen_config_map): Ditto.
	(do_sid_config_components): Ditto.
	(do_sidmain_config): Ditto.
	(do_ld_gmap_config): Ditto.
	(do_bfd_config_names): Ditto.
	(hw_peripheral): New struct type.
	(peripherals): New table.
	(peripherals_len): New variable.
	(n_peripherals): Ditto.
	(scan_peripherals): New function.
	(do_peripheral_includes): New function.
	(pass_peripheral_areas): New function.
	(map_cache): Use find_next. call pass_peripheral_areas. Don't pass
	peripheral regions from the gmap file.
	(do_sid_gmap_config): Don't allocate memory for peripheral regions
	from the gmap file. Don't map memory for the same regions. Generate
	code to add peripherals to the global memory space. For eacm
	MM_MODULE, map accessible peripherals into the main memory space.
	(main): Call do_peripheral_includes.

2002-10-25  D. Marlin  <dmarlin@redhat.com>

        * mepcfgtool.c (do_sidmain_config): Added HANDLE_PARAM_I macro reference 
        for dmem bank_num.

2002-10-11  D. Marlin  <dmarlin@redhat.com>

	* mepcfgtool.c (parse): #if 0'd out.
	(read_token): #if 0'd out.
	(do_sidmain_config): Removed HANDLE_PARAM_I macro references for
	[icache|dcache] [way|line_size].  These are defaulted in commonCfg.cxx

2002-10-09  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (do_sid_config_components): #if 0'd out.
	(do_sidmain_config): Generate call to add_dmac.  Don't call SET_OPT_IF
	to configure the dmac.

2002-10-03  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (map_cache): Allocate the cache and pass global memory
	regions even if the cache test area is already mapped in the gmap file.

2002-10-02  DJ Delorie  <dj@redhat.com>

	* rebuild.mk: New.
	* Makefile.in: Install it.

2002-09-26  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (hw_engine): New members: lbus_if, lbus_addr, lbus_size,
	cmodel_args.
	(scan_hw_engines): Start i at 0.  Get engine name first and use it in
	subsequent messages.  Handle new parameters LBUS_IF, LBUS_ADDRESS,
	LBUS_SIZE, CMODEL_ARGS.
	(map_cache): Don't pass local memory through the caches here.  It now
	gets done in MepBoardCfg::add_local_memory.
	(do_sid_gmap_config): 'global' is now 'global_mapper'.
	(do_sidmain_config): Generate config for caches before local memory and
	hw_engines.  Pass new hw_engine parameters in the generated code.

2002-09-11  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c: Use xmalloc, xcalloc, xrealloc.
	(libiberty.h): #include it.
	(cfgfilename): Add 'const'.
	(gmapfilename): Add 'const'.
	(localdir): New static variable.
	(resolve_localdir): New function.
	(resolve_config_filename): New function.
	(resolve_local_filename): New function.
	(read_input): #if 0. Not used right now.
	(include_from): Add 'const' to 'filename'. Call resolve_local_filename.
	(parse_any_gmap): Call resolve_local_filename.
	(main): Call resolve_config_filename.

2002-07-19  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (allocate_cache): New function.
	(map_cache): Allocate cache of correct size for each module. Don't map
	caches which don't exist in the configuration. Map gmap regions last.

2002-07-10  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (find_ld_rom_ram): RAM region must be global and within
	the range 0x800000-0xffffff. Use the region size and starting address
	to choose among the candidate regions.

2002-07-09  Ben Elliston  <bje@redhat.com>

	* cfg.l (downcase): Remove function. Update all callers.
	* mepcfgtool.c (push_node): Use strcasecmp for case insensitivity.
	(find_sub): Likewise.
	(str_array_contains): Likewise.
	(scan_hw_engines): Likewise.
	(map_cache): Likewise.
	(do_sidmain_config): Likewise.
	* lex.cfg.c: Regenerate.

2002-07-05  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (ICACHE_LINES_ADDRESS): New macro.
	(ICACHE_TAGS_ADDRESS): Ditto.
	(DCACHE_LINES_ADDRESS): Ditto.
	(DCACHE_TAGS_ADDRESS): Ditto.
	(map_cache_test_area): New function.
	(test_module): Ditto.
	(map_cache): Ditto.
	(do_sid_gmap_config): Call map_cache.

2002-06-20  Graydon Hoare  <graydon@redhat.com>

	* Makefile.in: Rename mepcfgtool as MeP-Integrator.
	* mepcfgtool.c (usage): Rename mepcfgtool as MeP-Integrator.
	* testsuite/customize.sh: Rename mepcfgtool as MeP-Integrator.
	* configure.in: Rename mepcfgtool as MeP-Integrator.
	* configure: Regenerate.

2002-06-13  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Configure interrupt levels.
	(do_sid_config_components): Configure interrupt levels.

2002-05-15  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Do not use localmap_tranalator;
	rather, use .base(), and subtract 0x200000 from shadow base.

2002-05-15  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Use localmap_tranalator.
	(do_sid_gmap_config): Judge anything in [0x200000 - 0x2fffff] as
	pre-defined local memory.

2002-05-01  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (cop_vliw_bits): Correct tree descent.
	(cop_data_bus_width): New function.
	(do_config_cc_spec): DATA_BUS_WIDTH for COP.
	(do_sidmain_config): Generate code to call set_cop_data_bus_width during
	configuration.

2002-04-30  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_user_isa_includes): Change to 3-pass form:
	delete all ISAs, maybe add new ISAs, overwrite sim functions.
	(do_sidmain_config): Output a VLIW setting when a
	coprocessor has been found with VLIW_TYPE=YES. 
	(do_sidmain_config) Remove item = item->sub, left over from the
	previous node naming convention.
	(do_sidmain_config): Default to 64 bit VLIW mode.

2002-04-29  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Incriment memory bank number
	when constructed, rather than per-iteration. 
	(do_sid_gmap_config) Use new Mapping objects.  
	(do_sid_gmap_config) Map shadows into board->global connection.  
	(do_sid_gmap_config) Treat peripheral and mainbus regions as
	"memory" for the time being.

2002-04-24  Ben Elliston  <bje@redhat.com>

	* Makefile.in (check): New target.

2002-04-22  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sidmain_config): Count module_index from 1,
	call first custom module CPU mep-ext1.

2002-04-19  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (hw_engine): Remove cbus_size field.
	(scan_hw_engines): Remove support for cbus_size.
	(do_sidmain_config): Remove support for cbus_size.

2002-04-19  Ben Elliston  <bje@redhat.com>

	* configure.in: Add automake magic, invoke AC_CONFIG_AUX_DIR
	correctly and emit a testsuite/Makefile.
	* configure: Regenerate.
	* aclocal.m4: Likewise.
	* testsuite/Makefile.am: New file.
	* testsuite/Makefile.in: Generate.

2002-04-18  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (start_linker_script): Always delete existing
	custom linker scripts, and regenerate from template.

2002-04-18  Ben Elliston  <bje@redhat.com>

	* test/monster.cfg, test/monster.out: Remove.

2002-04-15  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Map from global back to
	board-local names when board type name matches.
	(do_sid_gmap_config): Map global memory from 'global' memory,
	rather than 'main_mapper'. Global loaders may write to 'global'.
	
2002-04-15  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (hw_engine): New member, 'local_mem_list'.
	(scan_hw_engines): Save the local memory list, if specified.
	(do_sidmain_config): Provide the name of the local memory to
	add_local_mem.  Provide the local memory list to add_hw_engine.
	(do_sidmain_config): Handle the case where local_mem_list is NULL.

2002-04-09  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (include_from): Print the reason for fopen failure.
	(do_sid_gmap_config): Map global memory directly from 'main_mapper' to
	'global'.  Map all shadows back onto 'main_mapper'.
	(do_sid_gmap_config): Pass local memory through the insn cache and the
	data cache.

2002-04-02  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (parse_any_gmap): Make "-c" sensitive.
	(main): Likewise.
	(map_ld_output_sections): Make fgets loop sensitive to
	open-ness of input file.

2002-04-01  Graydon Hoare  <graydon@redhat.com>

	* cfg.y (new_node): Return constructed value.
	* parse.cfg.c: Regenerate.
	* lex.cfg.c: Regenerate.

Wed Mar 27 13:57:13 PST 2002  Brendan Conoboy  <blc@redhat.com>

	* mepcfgtool.c: Use sprintf since snprintf may not exist.

2002-03-26  Dave Brolley  <brolley@redhat.com>

	* mepcfgtool.c (copy_file): New function.
	(start_linker_script): Ditto.
	(map_ld_stack_and_heap): Ditto.
	(map_ld_output_section): Ditto.
	(map_ld_output_sections): Ditto.
	(map_ld_memory): Ditto.
	(write_ld_header): Ditto.
	(find_ld_rom_ram): Ditto.
	(do_ld_gmap_config): Ditto.
	(LINKER_SCRIPT_PATH): New macro.
	(LINKER_SCRIPT_PATH_LEN): Ditto.
	(LINKER_SCRIPT_DEFAULT): Ditto.
	(linker_scripts): New static data.
	(linker_scripts_len): Ditto.
	(linker_scripts_size): Ditto.
	(do_config_driver_option): Emit -T option for the linker.
	(parse_any_gmap): Trim the whitespace from the region name.
	(do_sid_gmap_config): Don't increment 'i' twice.
	(main): Call do_ld_gmap_config.
	(main): Include instructions for rebuilding
	BUILDDIR/mep-elf/libgloss/mep/Makefile.

2002-03-26  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Correct global map listing of
	memory objects.

2002-03-25  Graydon Hoare  <graydon@redhat.com>

	* lex.cfg.c, parse.cfg.c, parse.cfg.h: Add.
	* lex.gmap.c, parse.gmap.c, parse.gmap.h: Add.
	* Makefile.in: Support regenerating parsers and lexers into 
	$(srcdir).
	* mepcfgtool.c (do_sidmain_config): Remove "mep-" prefix from
	customized boards. If they're using mepcfgtool, they're using
	mep, and the prefix will annoy them.

2002-03-24  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_hw_engine_includes): Emit destructor calls for
	hw engines. Fix typos.
	(do_sidmain_config): Fix typos.

2002-03-23  Graydon Hoare  <graydon@redhat.com>

	* gmap.y: Remove debugging message.
	* mepcfgtool.c (do_user_isa_includes): Refactor a bit, fix errors.
	(do_sidmain_config): Support for incorporating hw engines into boards.
	(scan_hw_engines): Add.
	(do_hw_engine_includes): Add.
	(do_user_model_includes): Remove; do_user_isa_includes covers it now.

2002-03-23  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Support local memory regions,
	insert cache/pass settings in icache and dcache.
	(do_sidmain_config): Support local memory regions. 

2002-03-22  Graydon Hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_gmap_config): Extend to cover basic
	shadow regions.
	* mepcfgtool.h (name_and_num): Define for use in gmap.y.
	(do_sidmain_config): Set module type after construction.
	* gmap.y (shadow): Adjust to handle named shadow targets.
	* gmap.l: Tighten rules for comments and identifiers.

2002-03-21  Graydon Hoare  <graydon@redhat.com>

	* gmap.y: Loosened keyword recognition from strcmp to strstr.
	* cfg.y: Change [name] nodes to value of parent, rather than
	subnode, to simplify traversal.
	* mepcfgtool.c: Adapt to new node structure.
	(do_sid_gmap_config): Add.
	(parse_any_gmap): Add.
	(do_user_model_includes): Add.
	(do_user_isa_includes): Add.
	(str_array_contains): Add.

2002-03-18  Graydon Hoare  <graydon@redhat.com>

	* cfg.l, cfg.y, gmap.l, gmap.y: Add.
	* Makefile.in: Add rules for building parsers.
	* mepcfgtool.c (do_sidmain_config): Add.
	(main): Hook up new parsers.
	* mepcfgtool.h: Add.

2002-03-18  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_config_cc_spec): Tell gcc if a coprocessor
	is enabled.

2002-03-08  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (cop_vliw_bits): New.
	(do_config_cc_spec): Use it.
	(do_cgen_config_map): Likewise.

2002-03-08  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_config_driver_option): New syntax.

2002-01-25  Frank Ch. Eigler  <fche@redhat.com>

	* mcpcfgtool.c (check_corecount_limit): New function.
	(main): Call it.  Conditionally dump parsed .cfg file.  Print
	out rebuild instructions if needed.
	(end_file): Accumulate count of changed files.
	(do_sid_config_components): Compute cp/dsp/uci options.
	(do_config_coproc_selection, do_bfd_config_names): Reorganize.
	(do_bfd_cpu_map): Removed.

2001-12-07  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (do_sid_config_components): Allow composite --board
	options in confgrun-sid.in.
	* test/monster.out: Regenerated.

2001-12-04  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (do_sid_config_components): Emit me_engine clauses
	slightly differently.
	* test/monster.out: Regenerated.

2001-12-03  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool.c (testing): Add new global flag, with "-t" option.
	(usage): Update accordingly.
	(start_file, find_line, end_file): Support testing mode.
	(do_sid_config_components): Rewrite.  Update caller and enable.
	* test/monster.cfg, test/monster.out: New test files.

2001-10-25  graydon hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_config_coproc_selection): Add.
	(do_cpu_config_attr): Support coprocessor ISA selection.
	(main): Call do_config_coproc_selection.

2001-10-22  graydon hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_cgen_config_map): Emit OPTIONAL_VLIW64 flag in
	mep.opc.

2001-10-09  Frank Ch. Eigler  <fche@redhat.com>

	* mepcfgtool (main): #if-0 sid-related calls for now.

2001-09-04  graydon hoare  <graydon@redhat.com>

	* mepcfgtool.c (do_sid_config_components): New function to
	configure sid.
	(main): Add 2 calls to sid configure function: one for gdb-ish
	simulation, one without.

2001-07-16  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_cgen_config_map): Enable coprocessor insns only
	if COP=ON given or a COP[] section is present.

2001-07-09  DJ Delorie  <dj@redhat.com>

	* mepcfgtool.c (do_bfd_cpu_map): New.
	(do_bfd_config_names): New.
	(main): Edit bfd/cpu-mep.c and bfd/elf32-mep.c also.
	(read_input): Fix typo.

2001-07-02  DJ Delorie  <dj@redhat.com>

	* Makefile.in: New.
	* configure.in: New.
	* configure: New.
	* mepcfgtool: New.
