📄 changelog.00
字号:
creating entries in the hash table. * device.c (device_tree_find_node): Allow primative wild-card match of device names with the path. FIXME: As mentioned earlier, the device stuff needs work to bring it into line with OpenBoot. Part of this work is rewriting the find_node function so that it behaves as specified in p1275.Mon Dec 18 19:58:56 1995 Andrew Cagney <cagney@highland.com.au> * emul_chrp.c (chirp_emul_write, chirp_emul_finddevice): add better tracing. * emul_chrp.c: Change return type of emul functions to int. Emul functions either return -1 or zero so unsigned was a bit dangerous. * inline.h (*), igen.c, dgen.c, *: Update INLINE macros so that they are paramaterised with the type of the function. Gets around the problem of `static' needing to come first with `attribute' comming last. Format declarations and definitions so that emacs doesn't get confused.Fri Dec 15 17:06:44 1995 Andrew Cagney <cagney@highland.com.au> * std-config.h (PSIM_INLINE): Add missing inline configuration control for the main loop. * mon.c (mon_print_info): If monitoring disabled still print out the number seconds used. * psim.c (run_until_stop): Don't monitor the cache misses when monitoring is disabled. * configure.in (sim_mon, sim_monitor): Correct typo - sim_mon -> sim_monitor for shell variable (or should that have been the other way around?). * vm.c (vm_synchronize_context): Fix wrong test for unsuported change in endian-mode. * std-config.h (WITH_REGPARM), inline.h (IDECODE_INLINE, SEMANTICS_INLINE): Add -DWITH_REGPARM=<n> option. Enables the __attribute__((__regparm(WITH_REGPARM))) for some functions. configure with --enable-sim-cflags="-DWITH_REGPARAM=3" (say). Unfortunatly it tickles a bug (gcc?) and can't be used.Mon Dec 18 13:36:06 1995 Michael Meissner <meissner@tiktok.cygnus.com> * device.c (device_tree_add_device): Make trace fprintf arguments type correct. * device_table.c (htab_decode_hash_table): Ditto. (htab_map_binary): Ditto. (htab_init_callback): Ditto. * vm.c (om_virtual_to_real): Ditto.Sat Dec 16 09:54:18 1995 Michael Meissner <meissner@wogglebug.tiac.net> * emul_netbsd.c (emul_netbsd_create): Deal with new BFD that changed how big/little endian support is recorded, while remaining compatible with the old BFD with #ifdefs. * emul_chirp.c (emul_chirp_create): Ditto. * emul_bugapi.c (emul_bugapi_create): Ditto.Fri Dec 15 15:55:56 1995 Michael Meissner <meissner@tiktok.cygnus.com> * std-config.h (MODEL_INLINE): Turn off INLINE_MODULE by default. * corefile.h: Delete declarations for unknown functions. * device.h: Ditto. * interrupts.h: Ditto. * interrupts.c: Ditto.Thu Dec 14 18:49:34 1995 Andrew Cagney <cagney@highland.com.au> * lf.c (lf_print_function_type): New function. Munges a function type so that the prefix (eg INLINE...) is inserted after the type but before any `*'. * igen.c: Change to output functions using this.Wed Dec 13 23:47:00 1995 Andrew Cagney <cagney@highland.com.au> FIXME: Emul CHIRP does not correctly implement the find device function. FIXME: Emul CHIRP and device do not implement device instance operations.Wed Dec 13 23:47:00 1995 Andrew Cagney <cagney@highland.com.au> * options.c (options_inline): Function to output meaningful description of the INLINE options. * configure.in (inline): Replace inline magic numbers with macro names. Map 1->LOCALS_INLINE and 2->ALL_INLINE. * inline.h, inline.c: update to use inline method. * std-config.h (CPU_INLINE), cpu.h, inline.h, inline.c: make cpu.h inline always. * std-config.h (EVENTS_INLINE): Inline events in psim.Wed Dec 13 22:01:21 1995 Andrew Cagney <cagney@highland.com.au> * device_table.c (htab_sum_binary): DMA binaries to correct byte within a page.Tue Dec 12 22:51:18 1995 Andrew Cagney <cagney@highland.com.au> * psim.c (psim_merge_device_file): Change `=' to `==', was this an error?Tue Dec 5 11:56:14 1995 Andrew Cagney <cagney@highland.com.au> * ppc-instructions (ppc_nr_mtcrf_crs, ppc_branch_conditional_name, ppc_function_unit_name): Simplify by declaring these arrays as pure and simple static (instead of STATIC_MODEL).Tue Dec 5 00:45:34 1995 Andrew Cagney <cagney@highland.com.au> * sim_calls.c (sim_create, sim_load), main.c (main), psim.c: Pass an options device into psim_create() so that options can be merged into the tree. * device.c (*add*): Change semantics so the add functions only add when the new device (or property) doesn't already exist. This allows merging of options and data.Mon Dec 4 17:12:13 1995 Andrew Cagney <cagney@highland.com.au> * Makefile.in (BASICS_H): Didn't include basics.h in the list of header files to depend on.Mon Dec 4 17:12:13 1995 Andrew Cagney <cagney@highland.com.au> * std-config.h: (*_MODULE): Extend the <module>_inline macro's so that they also allow control over static functions. Rewrite document to reflect this. * std-config.h: (INLINE): Simplify definition, the above and earlier changes to igen.h eliminate the need to be defensive about enabling the inline of static functions. * std-config.h: (SIM_ENDIAN_INLINE, BITS_INLINE): Document limited suport for inlineing of modules for all callers. Adjust relevant macro's so that DEFAULT_INLINE will enable this. * basics.h: Re-order #includes and definitions so that c-code for basic include files does not call functions delcared in later #includes. * basics.h (__attribute__), sim_callbacks.h: Move attribute macro to basics.h and add hack (include <stdio.h>) to try and bring that and other possible conflicting macros into scope much earler. * sim-endian.h,c (SIM_ENDIAN_INLINE) bits.h,c (BITS_INLINE): Change to use the updated inline definitions. If enabled immediatly include the corresponding c-code so that it will inline for all modules. * inline.h, inline.c (SIM_ENDIAN_INLINE, BITS_INLINE): Remove these cases, moved to module specific header files.Sat Dec 2 18:37:51 1995 Andrew Cagney <cagney@highland.com.au> * vm.c, vm_n.c: Fix htab code. * vm.c (vm_data_map_read_buffer): Was using EA not RA when reading the data from core. * device.c: Fix htab create code.Fri Nov 24 23:10:09 1995 Andrew Cagney <cagney@highland.com.au> * bits.h, bits.c (EXTRACTED): Convert to function, fix - had && instead of &. * sim-endian.h (SWAP_N), sim-endian-n.h, sim-endian.c: How embarasing - fix yet another bug in the swap code! Simplify everything by using more functions. Add host to big-endian byte swapping support.Fri Nov 24 23:10:09 1995 Andrew Cagney <cagney@highland.com.au> * devices.h, devices.c: delete, replaced by the files device_table.[ch] and device.[ch]. * device_tree.h, device_tree.c: ditto * device_table.h, device_table.c: New files. Contain a table of devices. * device.h, device.c, Makefile.in, std-config.h (DEVICE_INLINE), options.c (print_options): New files. Define the device object along with any attached properties. * device_tree.h, device_tree.c: Update to use new device object. For convenience, change the printd functions into device_tree_add functions. * psim.c (create_*_tree): Use new device_tree create functions. * corefile.h, corefile.c corefile-n.h (core_n.h): Update to use the new device.h / device_table.h interface. Rename core_n.h to corefile-n.h to be consistent with other n files. * Makefile.in (run): add corefile-n.h to dependencies for corefile. * basics.h (device_instance), device.h, device.c, device_table.h, device_table.c: Add the concept of a device instance and operators on these instances - corresponds to ihandle in OpenBoot speak. Don't yet implement it.Tue Nov 14 12:27:08 1995 Andrew Cagney <cagney@highland.com.au> * emul_generic.h, emul_generic.c (emul_syscall_enter, emul_syscall_exit): rename from emul_enter_call / emul_exit_call. As only used by emul_do_system_call simplify associated code. * os_emul.h, os_emul.c, emul_generic.h: Correct and fill an os_emul interface. * os_emul.c, emul_bugapi.h, emul_bugapi.c, Makefile.in: Add preliminary hooks for a kernel mode rom emulation. * cap.h (new), cap.c (new): Capability data base. Some emulations pass object identifiers (capabilities?) to/from the simulated code (for instance the phandle in OpenBoot). The cap object is able to check/map between internal and external (target program) representations of each identifier. * os_emul.c, emul_chirp.h, emul_chirp.c, Makefile.in: Add preliminary hooks for a kernel mode IEEE-1275 emulation. * cpu.h, cpu.c (cpu_create, cpu_os_emulation, cpu): Add os_emul to list of arguments passed in when creating a cpu. Grant access to the element. * std-config.h (OS_EMUL_INLINE), options.c (print_options), inline.h, inline.c: New to allow control over inline of corresponding code files. * ppc-instructions (instruction_call): Add illegal instruction to call the instruction-call emulation handler. * interrupts.c (system_call_interrupt): Call renamed os_emul_system_call function(). * emul_netbsd.c: Update to interface to generic emulation. Since all its functions are called via a table don't worry about any inline. * emul_generic.h, emul_generic.c, spa-*(delete): Remove references and code for spa, no longer to be used. * psim.c (create_chirp_device_tree): Fill out what was previously the openboot create function so that it starts to create a full OpenBoot device tree.Tue Nov 28 21:48:06 1995 Andrew Cagney <cagney@highland.com.au> * debug.h, debug.c: pte trace is made redundant by htab trace, delete it. Add vm to list of options. Simplify tracing output so lines are not as long.Tue Nov 14 12:27:08 1995 Andrew Cagney <cagney@highland.com.au> * events.h, events.c (event_queue_init), psim.c (psim_init): (re) initialize the event queue.Tue Nov 28 13:38:26 1995 Michael Meissner <meissner@tiktok.cygnus.com> * sim-endian.h: Look at WORDS_BIGENDIAN to determine if the host is big endian or little endian. For SWAP_n, use htonl/htons if host is little endian, not big endian and if WITH_NTOH is defined. * configure{,.in} (--enable-sim-model-issue): Instead of defining 0/1, define it to be MODEL_ISSUE_{PROCESS,IGNORE}. Add AC_C_BIGENDIAN to determine if the host is big endian or not. * config.in: Regenerate. * std-config.h (WITH_MODEL_ISSUE): Default to 0. (CURRENT_MODEL_ISSUE): Reference WITH_MODEL_ISSUE, and if that is 0, use current_model_issue. (MODEL_ISSUE_{PROCESS,IGNORE}): Define as -1/1. * psim.c (current_model_issue): New global variable. * cpu.c (cpu_create): Use CURRENT_MODEL_ISSUE > 0 instead of WITH_MODEL_ISSUE. (cpu_{init,halt}): Ditto. * mon.c (mon_print_info): Ditto. * ppc-instructions (PPC_INSN_* macros, branch handling): Ditto. * mon.c (mon_print_info): Print instructions/second if verbose > 0, rather than > 1. * main.c (main): Set current_model_issue to MODEL_ISSUE_PROCESS if the -I switch is used. * sim_calls (sim_open): Ditto. * ppc-instructions (model support): Add support for determining when we don't have enough writeback slots. Add tracing for the beginning of each cycle.Mon Nov 27 17:46:33 1995 Michael Meissner <meissner@tiktok.cygnus.com> * mon.c: Check for whether to include sys/types.h and sys/time.h. * configure.in: Check for include files sys/types.h and sys/time.h. * configure: Regenerate. * config.in: Regenerate. * cpu.h (CONST_ATTRIBUTE): Define as __attribute__((__const__)) if not already defined. (cpu_system): Use CONST_ATTRIBUTE, so that when we're not inlining the world, the optimizer has a fair chance of CSE'ing function calls. (cpu_{monitor,nr,registers,model}): Ditto. * std-config.h (MODEL_INLINE): If not defined, define as 1 if DEFAULT_INLINE is non-zero, 0 otherwise, rather than just the value of DEFAULT_INLINE.Fri Nov 24 11:24:34 1995 Michael Meissner <meissner@tiktok.cygnus.com> * lf.h (__attribute__): If not GCC and at least 2.7.0, define as nothing. (lf_printf): Add printf __attribute__, so the compiler will automatically check the format string. * configure{,.in} (--enable-sim-icache): If argument is define, add -R to flags passed to igen. * igen.c (stdlib.h): Include if the system supplies one. (semantics_use_cache_struct): New global for -R flag to say semantics is to use the cache structure directly rather than
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -