📄 changelog.00
字号:
Tue Nov 7 23:36:31 1995 Andrew Cagney <cagneyhighland.com.au> * devices.c (htab_init_callback): Add code to create htab/pte. * devices.c (dma_file, file_init_callback, htab_init_callback): New function - Dma the named file into memory at the specified address. Use. * device_tree.h, device_tree.c (scand_*): New functions.Tue Nov 7 23:36:31 1995 Andrew Cagney <cagneyhighland.com.au> * filter_filename.c, Makefile.in: Change so that only dependant on a very limited nr of files. Stops an unnecessary dependency.Tue Nov 7 15:44:33 1995 Andrew Cagney <cagney@highland.com.au> * core.c (core_map_find_mapping): Use cpu_halt rather than error to abort an access to an undefined address.Sun Nov 12 07:58:09 1995 Michael Meissner <meissner@tiktok.cygnus.com> * igen.c (model_table_insert_{macro,function}): New functions. (insn_table_load_insns): Call them. (gen_model_h): Move section emiting model-macros to be first. (model_{c,h}_function): New functions cloned from semantic functions to print out the prototype and function for model-functions. (gen_model_{c,h}): Print out model-functions. * ppc-instructions (model_{start,halt,print_info}): Add dummy model-functions. * options.c (print_options): Print out WITH_{,DEFAULT_}MODEL, not WITH_PPC_{,DEFAULT_}_MODEL. (options_ppc): Delete now unused function. (cpu.h): Include cpu.h, not just basics.h. * std-config.h (WITH_{,DEFAULT_}MODEL): Define. * igen.c (model_macros, last_model_macro): New statics to keep track of macros to go in model.h. (insn_table_load_insns): Add model-macros to model_macros linked list. (model_table_fields): Add field for printable name. (gen_model_h): If there are model macros defined, print them out. Print out DEFAULT_MODEL as the first model if there any models specified, otherwise MODEL_NONE. Print out external decl for current_model. Print out decl for model_set. (gen_model_c): Add function model_set. Switch to use printable name for the model, not the internal identifier used. * psim.c (current_model): New global variable. * ppc-instructions: Add macros for flag defines. Switch first model so 604 is first. * main.c (main): Call model_set, not function_unit_model. * sim_calls.c (sim_open): Ditto. * sim_calls.c, Makefile.in: sim_calls.c now includes cpu.h.Sat Nov 11 07:27:41 1995 Michael Meissner <meissner@tiktok.cygnus.com> * mon.h (mon_events): New enumeration for other events we want to handle. (mon_event): Add declaration for function. * mon.c (mon_event): New function. (mon_print_info): Print icache misses. * psim.c (run_until_stop): Monitor icache misses. * configure.in (--enable-sim-inline): Fix typos in handling comma separated inline options. (--enable-sim-icache): Echo icache size. * configure: Regenerate. * igen.c (semantics_h_print_function): Emit STATIC_SEMANTICS instead of INLINE_SEMANTICS so that the compiler won't keep all of the semantic functions as inline RTL, given that the address of the function is taken which forces outline calls anyway. (lf_print_c_semantic_function_header): Ditto. (gen_semantics_h): Define STATIC_SEMANTICS as nothing if not defined. (lf_print_c_cracker_function): Emit STATIC_IDECODE instead of STATIC_INLINE_IDECODE. (gen_idecode_c): Define STATIC_IDECODE if not defined. (gen_model_h): Use #ifdefs to define types to hold model units, cycles, and flags. (model_table_insert): Add a sentinel functional unit at the end to simplify loop processing. (model_c_insn): Use <function-unit>_SENTINAL instead of 0 for any instruction not specifing a function unit for the current model. (gen_model_{c,h}): Provide bounds for model_time_mapping. * inline.h (STATIC_SEMANTICS): Define to be static if SEMANTICS_INLINE is defined. (STATIC_IDECODE): Define to be static if IDECODE_INLINE is defined. * options.c (print_options): Fix typo.Fri Nov 10 06:39:46 1995 Michael Meissner <meissner@tiktok.cygnus.com> * configure.in (--enable-sim-{opcode,config}): Use $srcdir when check for the existence of files. * configure: Regenerate. * table.c (table): New field nr_model_fields. (table_open): New parameter nr_model_fields. (table_entry_read): Parse model fields that begin with a '*' after each instruction. * igen.c, dgen.c: Change callers of table_open. * igen.c: Add support for dumping model specific information in model.h and model.c. (insn_field_name): Delete unused array. (global variables): Make global variables static, so we can tell when they are no longer used. (cache_semantic_actual): Delete unused variable. (insn_table_load_insns): If the insn is really a machine model, call model_table_insert instead of other processing. (model_table_insert): New function to handle defining the functional units of a particular machine model. (insn_table): Add last_function field so we can add functions at the end. (insn_table_insert_function): Use last_function field when appending new function. * ppc-instructions: Add a few model specific information for 603, 603e, and 604 for testing purposes. * table.h (table_model_entry): New linked list to hold model specific information, one per line. (table_entry): Add model_first, model_last fields. * configure.in (--enable-sim-inline): If gcc is found and --enable-sim-inline is not specified, defaine DEFAULT_INLINE to 1, not 2. (--enable-sim-reserved-bits): New switch to check whether reserved bits are set in the instruction. (--enable-sim-opcode): Make complex the default. (all switches): Add appropriate checks and error messages. * configure: Regenerate. * Makefile.in (RESERVED_CFLAGS): New variable set by --enable-sim-reserved-bits. (CONFIG_CFLAGS): Include RESERVED_CFLAGS. (BUILT_SRC): igen now generates model.c and model.h. (LIB_OBJ): Include table.o. (tmp-igen): Add -m/-M options to write model.c/model.h. (model.o): New object. (CPU_H): Include model.h. * cpu.h: Include model.h. * std-config.h (WITH_RESERVED_BITS): Define. (MODEL_INLINE): Ditto. * options.c (print_options): Print out WITH_RESERVED_BITS.Thu Nov 9 12:22:15 1995 Michael Meissner <meissner@tiktok.cygnus.com> * configure.in: If --silent, don't output information messages. * configure: Regenerate. * configure.in (--enable-sim-alignment): Fix typo in specifing non strict alignment. (--enable-sim-switch): Make default on. (--enable-sim-duplicate): Make default on. (--enable-sim-smp): Make default 0. (--enable-sim-mon): Don't set sim_float if not set. (--enable-sim-inline): If gcc is found and --enable-sim-inline is not specified, define DEFAULT_INLINE to be 2. (all --enable-sim-* rules): Echo rules set to non empty to file descriptor 6. * configure: Regenerate. * options.c (options_env): Fix typo if WITH_ENV is 0. (print_options): Print GCC compiler version if available and date/time options was compiled. If OPCODE_RULES, IGEN_FLAGS, and/or DGEN_FLAGS are defined, print them. * Makefile.in (all link actions): Pass SIM_CFLAGS as well as CFLAGS. (options.o): Compile options.o with OPCODE_RULES, IGEN_FLAGS, and DGEN_FLAGS defined, so they can be printed out. * igen.c (lf_print_c_validate): Check for WITH_ASSERT, so that this test can be compiled away if the user really wants a fast simulator by not doing assertion failures.Wed Nov 8 13:19:47 1995 Michael Meissner <meissner@tiktok.cygnus.com> * options.c: New file to print out all of the WITH_ options. * options.h: New include file to declare print_options. * debug.h (trace_options): Add trace_opts to call print_options. * debug.c (trace_description): Add trace_opts support. * main.c (main): If user requested options, print them. * sim_calls.c (sim_open): Ditto. * igen.c (opcode_field_new): Add void to make it a proper prototype. * emul_generic.c (emul_enter_call): Make printf_filtered arguments type correct. * emul_netbsd.c (do_kill): Ditto. * registers.c (registers_dump): Ditto. * vm.c (om_translate_effective_to_real): Ditto. * vm_n.h (vm_data_map_read_N): Ditto. (vm_data_map_write_N): Ditto. * devices.h (DTRACE_INIT): Ditto. (DTRACE_{ATTACH,DETACH}_ADDRESS): Ditto. (DTRACE_IO_{READ,WRITE}_BUFFER): Ditto. (DTRACE_DMA_{READ,WRITE}_BUFFER): Ditto. * devices.c (update_for_binary_section): Ditto. (write_stack_arguments): Ditto. (stack_ioctl_callback): Ditto. * device_tree.c (device_tree_add_passthrough): Ditto. (device_tree_{add,find}_device): Ditto. (device_tree_{add,find}_integer): Ditto. (device_tree_find_{string,boolean}): Ditto. (device_tree_init{,_device}): Ditto. (device_tree_dump): Ditto. * sim_calls.c (sim_{read,write}): Ditto. (sim_{fetch,store}_register): Ditto. (sim_stop_reason): Ditto. * sim_callbacks.h (printf_filtered): Declare with attribute printf, so we can enable format checks. * devices.c (console_io_{read,write}_buffer_callback): Cast swtich argument to int, since ANSI doesn't allow long switch values. * emul_netbsd.c (do___sysctl): Ditto. * emul_netbsd.c (do___sysctl): Fix up printf call. * corefile.c (core_translate): Don't do arithmetic with void * pointers. Cast to char * first. * function_unit.c (FUNC_{LOAD,STORE}): Rename from {LOAD,STORE} and change all uses. * Makefile.in ({FUNC,MODEL,WARNING}_CFLAGS): New flags set by configure --enable switches. (CONFIG_CFLAGS): Include FUNC_CFLAGS and MODE_CFLAGS. (.c.o): Include WARNING_CFLAGS. (CPU_H): Include function_unit.h. (LIB_OBJ): Include function_unit.o. (BUILT_SRC_WO_CONFIG): Split from BUILT_SRC and do not include config.h or ppc-config.h. (BUILT_SRC): Include BUILT_SRC_WO_CONFIG, config.h and ppc-config.h. (filter_filename.o): Include config.h/ppc-config.h dependencies. (idecode.o, semantics.o, psim.o): Specify CC line without WARNING_CFLAGS so that we don't get all of the unused variable warnings that are generated. (function_unit.o): Add rule to build. (main.o, sim_calls.o): Add function_unit.h, itable.h dependencies. (mon.o): Include mon.c dependency. (TAGS): Depend on BUILT_SRC. (clean): Don't delete config.h or ppc-config.h * basics.h (sim_callbacks.h): Move include after the include of config.h and ppc-config.h. * bits.{h,c} (ROTL32,ROTL64): Move these functions to bits.c. Add support for BITS_INLINE to inline these. Add declarations to bits.h. * configure.in (--enable-sim-warnings): Add new option to specify compiler warnings for all modules except idecode.o and semantics.o which have lots of unused variables because they are machine generated. (--enable-sim-function-unit): New switch to configure whether function unit support is compiled in or not. (--enable-sim-{,default-}mode): New switches to control which cpu model is used. * configure: Regenerate. * corefile.c (core_attach_address_callback): Delete unused variable device_address. * cpu.c (struct _cpu): Add function unit pointer field func_unit. (cpu_create): If WITH_FUNCTION_UNIT, call function_unit_create. (cpu_init): If WITH_FUNCTION_UNIT, call function_unit_init. (cpu_halt): If WITH_FUNCTION_UNIT, call function_unit_halt. (cpu_function_unit): New function to return func_unit field. * cpu.h (function_unit.h): Include new include file. (cpu_function_unit): Declare. * debug.c (stdlib.h): Test HAVE_STDLIB_H, not HAVE_STDLIB. (config.h): Include config.h. * devices.c (icu_io_write_buffer_callback): Delete unused variable system. * emul_generic.c (emul_exit_call): Print out status value. * emul_netbsd.c (do_read): Delete unused variable nr_moved. * filter_filename.h (includes): Include config.h, ppc-config.h, not basics.h. * inline.c: Include bits.c if BITS_INLINE. Include function_unit.c if FUNCTION_UNIT_INLINE. * inline.h (INLINE_BITS): Define if BITS_INLINE. (INLINE_FUNCTION_UNIT): Define if FUNCTION_UNIT_INLINE. * interrupts.c (instruction_storage_interrupt): Delete unused variable nia. * lf.h (config.h): Include config.h. * main.c (includes): Include function_unit.c. If HAVE_UNISTD_H, include unistd.h. (usage): Update for -m model, -i, and -I options. (main): Delete unused variables stack_pointer and i. Add support for -i, -m model arguments. Call psim_print_info with verbose == 1 if -i, and verbose == 2 if -I. * mon.c (stdio.h): Include stdio.h to pick up sprintf prototype. (mon_issue): Call function_unit_issue if function units are supported. (mon_print_info): Take psim * argument. Print out information from function_unit if available. Move read/write stats to always print, instead of printing if verbose > 1. Fix up plural vs. singular usage. * mon.h (mon_print_info): Update prototype. * psim.c (current_ppc_model): Add global variable. (psim_print_info): Pass system argument to mon_print_info. * sim_calls.c (function_unit.h): Include. (sim_open): Add support for -i and -m model options. If -i call psim_print_info with verbose == 1, if -I, with verbose == 2. (sim_resume): Delete unused variable program_counter. * std-config.h (WITH_FUNCTION_UNIT): Define. (ppc_model): Add enumeration giving all PowerPC models currently known about. ({WITH,CURRENT}_PPC_MODEL): Define. (FUNCTION_UNIT_INLINE): Define. * table.c (config.h): Include config.h.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -