1 Thu Oct 26 10:42:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
3 * Makefile.in (clean): Delete *.i and *.out files.
5 * ppc-endian.c (SWAP_n): Add SET argument to allow use of SWAP
6 macros for either assignment or return. Fix SWAP_8 to use a
7 union, and two SWAP_4's. Delete SWAP_N, since nobody uses it now.
8 (ENDIAN_N): Add SET argument to SWAP_n calls. Delete macro defs
9 that hardwired swapping on/off, let optimizer delete dead code.
11 * main.c (main): Add printf that we caught a signal and print out
14 Thu Oct 19 21:43:39 1995 Fred Fish <fnf@fishfood.amigalib.com>
16 * Makefile.in: Remove tabs from otherwise empty line.
17 Confuses many non-GNU versions of "make".
19 Wed Oct 18 08:51:25 1995 Michael Meissner <meissner@tiktok.cygnus.com>
21 * Makefile.in (clean): Delete files produced by gen.
23 Mon Oct 16 17:34:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
25 * gen.c (lf_print_c_semantic_function): Move counting # of
26 instructions here so it works with caching.
27 (gen_idecode_c): Move from here.
29 Wed Oct 11 17:13:15 1995 Andrew Cagney <cagney@highland.com.au>
31 * gen.c, ppc-instructions, psim.c: Fix code for generating
32 cracking instruction cache. Delete the code that cached just the
33 result from doing an instruction lookup - this ran slower than no
36 Fri Oct 13 09:58:43 1995 Michael Meissner <meissner@tiktok.cygnus.com>
38 * Makefile.in (gen.o): Include $(INLINE_CFLAGS).
40 * debug.h (ppc_trace): Rename from trace, to avoid a conflict with
41 TCL when gdb is linked with the simulator.
42 * debug.c (ppc_trace): Ditto.
43 * sim_calls.c (sim_open): Change trace -> ppc_trace.
44 * main.c (main): Ditto.
46 * cpu.c (cpu_add_commas): Remove extra static.
48 Thu Oct 12 11:35:53 1995 Michael Meissner <meissner@tiktok.cygnus.com>
50 * Makefile.in (psim.o): Now that inlines are turned on, make
51 psim.o depend on all sources.
53 * cpu.c (cpu_add_commas): New function to format a long with
55 (cpu_print_info): Use it to print number_of_insns.
57 * ppc-endian.c (SWAP_n): New macros to speed up byte swapping for
59 (ENDIAN_N): If both target and host byte orders are known, don't
60 bother testing CURRENT_{TARGET,HOST}_BYTE_ORDER.
62 * ppc-endian.h (target specific H2T_n/T2H_n macros): Remove #if 0
63 to allow target specific H2T_n/T2H_n macros to be used.
64 (htonl, ntohl): If compiled on a 486 by GCC and WITH_BSWAP is
65 non-zero, redefine the htonl/ntohl macros to use the BSWAP instead
66 of the 3 instruction sequence that runs on 386s.
68 * std-config.h (WITH_{HOST,TARGET}_BYTE_ORDER): Don't override if
69 specified on the compile line.
70 (WITH_BSWAP): If not defined, define as 0.
72 * Makefile.in (INLINE_CFLAGS): Add -DDEFAULT_INLINE=2 to add
73 default inline support. Pass INLINE_CFLAGS when compiling.
75 * devices.{h,c} (unimp_device_ioctl): Use STATIC_DEVICES, not
76 INLINE_DEVICES since GCC doesn't like inline functions that
77 accept variable arguments.
78 (stack_ioctl_callback): Make function just static because GCC
79 doesn't like inline functions that accept variable arguments.
81 * devices.h (STATIC_DEVICES): Define as empty if not defined.
83 * inline.c: Correct pathnames of included C files to match current
86 * inline.h (STATIC_DEVICES): If DEVICES_INLINE is defined to be
87 non-zero, define STATIC_DEVICES to be static.
89 * std-config.h (INLINE): If GNU C and optimizing, define this as
91 (DEFAULT_INLINE): If not defined, define as 0.
92 (ENDIAN_INLINE): If not defined, define as DEFAULT_INLINE.
93 ({CORE,VM,CPU,EVENTS,REGISTERS,INTERRUPTS}_INLINE): Ditto.
94 ({SPREG,IDECODE}_INLINE): Ditto.
96 Wed Oct 11 17:13:15 1995 Andrew Cagney <cagney@kremvax>
98 * ppc-instructions: Initial cut of floating point suport added.
99 Of note include - use of host IEEE floating point instructions,
100 use of PowerPC manual pseudo code to handle the FPSCR. It is not
101 currently a pretty sight.
103 * memory_map.h, memory_map.c, memory_map_n.h, core.h, core.c:
104 merge into core.h, core.c, core_n.h. The type memory_map replaced
105 with core_map. This removes a level of pointer indirection when
106 translating an address.
108 * memory_map.h, memory_map.c, memory_map_n.h: delete.
110 * Makefile.in et.al (sorry): tweek to use new core, core_map and
113 Wed Oct 11 12:10:26 1995 Andrew Cagney <cagney@kremvax>
115 * sim_calls.c, main.c: Add -g (trace_gdb) option, add tracing to
116 most of the other functions in sim_calls.c.
118 * basics.h (CONCAT3), memory_map.c, memory_map_n.h, Makefile.in:
119 Add macros to better cover up `generic' code. Makes it possible
120 to step through the generic code!
122 * vm.c, vm_n.h, Makefile.in: ditto
124 Tue Oct 10 15:42:59 1995 Andrew Cagney <cagney@kremvax>
126 * devices.h, devices.c, memory_map.h, memory_map.c: Changed
127 callback interface so that there is a read/write buffer but no
128 read/write_word. VEA default memory read/write handler sometimes
129 couldn't resolve an access and of those some were for a memory
130 fault and some were because gdb was making a bogus request.
132 * devices.h, devices.c, memory_map.h, memory_map.c, vm.h, vm.c:
133 eliminate transfer_mode (raw or cooked) parameter from read/write
136 Fri Oct 6 20:23:56 1995 Andrew Cagney <cagney@kremvax>
138 * ppc-instructions (fmul, fmuls): correct instruction format - had
141 Wed Oct 4 17:31:12 1995 Andrew Cagney <cagney@kremvax>
143 * psim.c, device_tree.h, device_tree.c, devices.c (printd_*,
144 scand_*): new functions to parse/print fields in device names
145 while hiding any machine dependency.
147 * devices.c, psim.c: Change the stack init code so that it is
148 handled by a device. Arguments passed across using a device ioctl
151 * devices.h, devices.c: device ioctl callback changed to allow a
152 variable number of arguments. This gives greater flexability and
153 greater chance of bugs.
155 Tue Oct 3 22:01:56 1995 Andrew Cagney - aka Noid <cagney@kremvax>
157 * main.c (printf_filtered, error): Missing va_end() to close off
158 variable argument use.
160 * Makefile.in (tmp-gencode): comment out hack to get around some
161 versions of make not handling files being created as side-effects.
163 * gen.c (lf_open): Add -n (real_file_name) option. Specifies an
164 alternative file name to use in output files for things like #line
167 Makefile.in (tmp-gencode): Use gen -n so that debug info is
170 * Makefile.in (TARGETLIB): Use this instead of libsim.a in the
173 Sat Oct 7 22:40:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
175 * sim_calls.c (sim_set_callbacks): Define new function.
177 Fri Oct 6 17:23:10 1995 Michael Meissner <meissner@tiktok.cygnus.com>
179 * psim.c (psim_print_info): Print exit status or signal number.
181 Mon Oct 2 11:46:37 1995 Michael Meissner <meissner@tiktok.cygnus.com>
183 * cpu.c (struct _cpu): Add number_of_insns field to trace how many
184 instructions are executed.
185 (cpu_increment_number_of_insns): New function to increment the
186 number of instructions issued.
187 (cpu_get_number_of_insns): New function to return the number of
189 (cpu_print_info): New function to print cpu related information.
190 At present, print the number of instructions executed.
192 * gen_idecode_c: Emit call to cpu_increment_number_of_insns within
195 * psim.c (psim_print_info): New function to iterate over each of
196 the CPU's calling cpu_print_info.
198 * psim.h,cpu.h: Add new declarations.
200 * sim_calls.c (sim_open): Add argument processing to add the same
201 switches main.c accepts for the standalone processor.
202 (sim_close): Call psim_print_info if -I.
204 * main.c (main): Add comment saying to update sim_calls.c when
205 adding switches. Add -I to call psim_print_info when done.
206 (usage): Update usage message.
208 Sun Oct 1 13:52:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
210 * main.c (printf_filtered): Correct to match new prototype.
212 Sat Sep 30 20:47:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
214 * sim_callbacks.h (printf_filtered): Correct prototype.
216 Thu Sep 21 16:26:49 1995 Michael Meissner <meissner@tiktok.cygnus.com>
218 * device_tree.c (OEA_MEMORY_SIZE): Define if not defined to
220 (clayton_memory_size): Define as OEA_MEMORY_SIZE.
222 * std-config.h (WITH_TRACE): Default to 1 now.
224 * psim.c (write_stack_arguments): Don't write any stack arguments
227 * main.c (main): Switch to using getopt. Make -p also set
228 trace_semantics. Make -a turn on all trace flags. Make -C turn
231 * device_tree.c (create_option_device_node): Assume a program is
232 OEA if the start address is < 4096, not just == 0.
234 Wed Sep 20 13:36:06 1995 Ian Lance Taylor <ian@cygnus.com>
236 * Makefile.in (maintainer-clean): New synonym for realclean.
238 Sun Sep 10 10:23:56 1995 Michael Tiemann <tiemann@axon.cygnus.com>
240 * registers.c (register_description): Add gdb synonyms for cr
243 Fri Sep 8 13:16:10 1995 Ian Lance Taylor <ian@cygnus.com>
245 * Makefile.in (install): Don't install in $(tooldir).
247 * configure.in: Call AC_CONFIG_HEADER. Don't try to use
248 bfd/hosts/*.h file or bfd/config/*.mh file. Call AC_PROG_CC and
249 AC_PROG_RANLIB. Substitute in values for CFLAGS, HDEFINES, AR,
250 and CC_FOR_BUILD. Call AC_CHECK_HEADERS for various header files.
251 Touch stamp.h if creating config.h.
252 * configure: Rebuild.
253 * config.in: New file, created by autoheader.
254 * Makefile.in (AR): Define as @AR@.
255 (CC): New variable, defined as @CC@.
256 (CFLAGS): Define as @CFLAGS@.
257 (CC_FOR_BUILD): New variable, defined as @CC_FOR_BUILD@.
258 (RANLIB): Define as @RANLIB@.
259 (HDEFINES, TDEFINES): New variables.
260 (@host_makefile_frag@): Remove.
261 (mostlyclean): Make the same as clean, not distclean.
262 (clean): Remove config.log.
263 (distclean): Remove config.h and stamp-h.
264 (Makefile): Don't depend upon @frags@. Just rebuild Makefile when
265 invoking config.status.
266 (config.h, stamp-h): New targets.
267 (gen, gen.o): Build with CC_FOR_BUILD, not CC.
268 (ppc-config.h): Rename from old config.h build.
269 * (basics.h,gen.c,ppc-endian.c,psim.c): Include ppc-config.h.
271 Fri Sep 8 09:51:03 1995 Michael Meissner <meissner@tiktok.cygnus.com>
273 * configure{,.in}: Don't include sysdep.h from bfd, since bfd no
275 * basics.h (sysdep.h): Don't include it.
276 * Makefile.in (BASICS_H): Remove sysdep.h.
278 Wed Sep 6 13:25:42 1995 Andrew Cagney - aka Noid <cagney@kremvax>
280 * core.c (core_add_data): First growth of bss was being put at
281 wrong address (0) instead of &end.
283 * core.c (core_add_stack, core_add_data): Was not handling case
284 where bss/stack is grown across the current end-of-{bss,stack}.
286 Wed Sep 6 00:46:10 1995 Andrew Cagney - aka Noid <cagney@kremvax>
288 * system.c (system_call): Fix SYS_break - was aligning bss to a
289 page boundary instead of just an 8 byte one; On first call sbrk(0)
292 Thu Aug 24 14:48:54 1995 Michael Meissner <meissner@tiktok.cygnus.com>
294 * Makefile.in (install): Fix install rule.
296 Tue Aug 22 09:31:18 1995 Michael Meissner <meissner@tiktok.cygnus.com>
298 * system.c (system_call): Add read support.
300 * main.c (main): -t sets trace_device_tree. Correct usage message
303 * device_tree.c (update_memory_node_for_section): Make tracing
304 output line up. If not code or readonly, assume that the section
305 is a data section and has read/write permissions. Add readonly
308 * core.c (create_core_from_addresses): Print end address in traces
309 and make tracing output line up.
311 * Makefile.in: Rewrite from Makefile to work with the Cygnus
312 environment, and support compiling in a different directory than
313 the sources reside in.
315 * ppc-endian.h: Rename from endian.h so that it doesn't get
316 confused with /usr/include/sys/endian.h on Linux. Add Linux
319 * ppc-endian.c: Rename to be consistant with ppc-endian.h.
320 Include ppc-endian.h, not endian.h.
322 * basics.h (sysdep.h): Include sysdep.h that configure makes.
323 Include ppc-endian.h, not endian.h.
325 * std-config.h: Rename from ppc-config. Put #ifndefs around most
326 configuration macros, so they can be overridden via CFLAGS. By
327 default, turn off tracing.
329 * configure.in: Clone from other simulator targets.
330 * configure: Generate via autoconf from configure.in.
332 Sat Aug 19 09:05:32 1995 Andrew Cagney - aka Noid <cagney@kremvax>
334 * ppc-instructions: fix srawi (was geting XER[CA] real wrong).
336 * interrupts.c (data_storage_interrupt): allow stack to grow by
337 upto one MB per increment.
339 * ppc-instructions: divw was computing rA / rA not rA / rB
341 * main.c (main): really stupid. Wasn't exiting with correct status
343 Fri Aug 18 00:38:01 1995 Andrew Cagney - aka Noid <cagney@kremvax>
345 * system.c (system_call): add system calls kill(2) and getpid(2).
347 * main.c (main): Check/return exit status when simulation
350 Thu Aug 17 14:29:18 1995 Andrew Cagney <cagney@kremvax>
352 * device_tree.c (create_option_device_node): Alignment rules (at
353 least for the moment) now are for strict alignment only for LE OEA
354 mode. (Because of compiler problems).
356 * system.c (system_call) SYS_exit: Wasn't exiting with correct status.
358 Thu Aug 17 01:16:38 1995 Andrew Cagney - aka Noid <cagney@kremvax>
360 * vm.c (DEFINE_VM_DATA_MAP_WRITE_N): For miss aligned transfer
363 * system.c (system_call): didn't page align break argument before
364 determining increment break increment.
366 * psim/ppc: Re-arange entire directory structure so that
367 everything lives in the one directory. While a pain for cleaning,
368 makes building across multiple architectures much simpler.
370 * devices.c, device_tree.c: Added code that provides a simple
371 illustration of how an interrupt control device could be
374 * devices.c: Added code so that the dumb console device can read
375 (from stdin) as well as write to stdout.