1995-10-12 15:48:22 +00:00
|
|
|
Thu Oct 12 11:35:53 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
1995-10-12 21:49:37 +00:00
|
|
|
* ppc-endian.c (SWAP_n): New macros to speed up byte swapping for
|
|
|
|
2, 4, and 8 bytes.
|
|
|
|
(ENDIAN_N): If both target and host byte orders are known, don't
|
|
|
|
bother testing CURRENT_{TARGET,HOST}_BYTE_ORDER.
|
|
|
|
|
|
|
|
* ppc-endian.h (target specific H2T_n/T2H_n macros): Remove #if 0
|
|
|
|
to allow target specific H2T_n/T2H_n macros to be used.
|
|
|
|
(htonl, ntohl): If compiled on a 486 by GCC and WITH_BSWAP is
|
|
|
|
non-zero, redefine the htonl/ntohl macros to use the BSWAP instead
|
|
|
|
of the 3 instruction sequence that runs on 386s.
|
|
|
|
|
|
|
|
* std-config.h (WITH_{HOST,TARGET}_BYTE_ORDER): Don't override if
|
|
|
|
specified on the compile line.
|
|
|
|
(WITH_BSWAP): If not defined, define as 0.
|
|
|
|
|
1995-10-12 15:48:22 +00:00
|
|
|
* Makefile.in (INLINE_CFLAGS): Add -DDEFAULT_INLINE=2 to add
|
|
|
|
default inline support. Pass INLINE_CFLAGS when compiling.
|
|
|
|
|
|
|
|
* devices.{h,c} (unimp_device_ioctl): Use STATIC_DEVICES, not
|
|
|
|
INLINE_DEVICES since GCC doesn't like inline functions that
|
|
|
|
accept variable arguments.
|
|
|
|
(stack_ioctl_callback): Make function just static because GCC
|
|
|
|
doesn't like inline functions that accept variable arguments.
|
|
|
|
|
|
|
|
* devices.h (STATIC_DEVICES): Define as empty if not defined.
|
|
|
|
|
|
|
|
* inline.c: Correct pathnames of included C files to match current
|
|
|
|
implementation.
|
|
|
|
|
|
|
|
* inline.h (STATIC_DEVICES): If DEVICES_INLINE is defined to be
|
|
|
|
non-zero, define STATIC_DEVICES to be static.
|
|
|
|
|
|
|
|
* std-config.h (INLINE): If GNU C and optimizing, define this as
|
|
|
|
__inline__.
|
|
|
|
(DEFAULT_INLINE): If not defined, define as 0.
|
|
|
|
(ENDIAN_INLINE): If not defined, define as DEFAULT_INLINE.
|
|
|
|
({CORE,VM,CPU,EVENTS,REGISTERS,INTERRUPTS}_INLINE): Ditto.
|
|
|
|
({SPREG,IDECODE}_INLINE): Ditto.
|
|
|
|
|
|
|
|
Wed Oct 11 17:13:15 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* ppc-instructions: Initial cut of floating point suport added.
|
|
|
|
Of note include - use of host IEEE floating point instructions,
|
|
|
|
use of PowerPC manual pseudo code to handle the FPSCR. It is not
|
|
|
|
currently a pretty sight.
|
|
|
|
|
|
|
|
* memory_map.h, memory_map.c, memory_map_n.h, core.h, core.c:
|
|
|
|
merge into core.h, core.c, core_n.h. The type memory_map replaced
|
|
|
|
with core_map. This removes a level of pointer indirection when
|
|
|
|
translating an address.
|
|
|
|
|
|
|
|
* memory_map.h, memory_map.c, memory_map_n.h: delete.
|
|
|
|
|
|
|
|
* Makefile.in et.al (sorry): tweek to use new core, core_map and
|
|
|
|
core.h.
|
|
|
|
|
|
|
|
Wed Oct 11 12:10:26 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* sim_calls.c, main.c: Add -g (trace_gdb) option, add tracing to
|
|
|
|
most of the other functions in sim_calls.c.
|
|
|
|
|
|
|
|
* basics.h (CONCAT3), memory_map.c, memory_map_n.h, Makefile.in:
|
|
|
|
Add macros to better cover up `generic' code. Makes it possible
|
|
|
|
to step through the generic code!
|
|
|
|
|
|
|
|
* vm.c, vm_n.h, Makefile.in: ditto
|
|
|
|
|
|
|
|
Tue Oct 10 15:42:59 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* devices.h, devices.c, memory_map.h, memory_map.c: Changed
|
|
|
|
callback interface so that there is a read/write buffer but no
|
|
|
|
read/write_word. VEA default memory read/write handler sometimes
|
|
|
|
couldn't resolve an access and of those some were for a memory
|
|
|
|
fault and some were because gdb was making a bogus request.
|
|
|
|
|
|
|
|
* devices.h, devices.c, memory_map.h, memory_map.c, vm.h, vm.c:
|
|
|
|
eliminate transfer_mode (raw or cooked) parameter from read/write
|
|
|
|
buffer.
|
|
|
|
|
|
|
|
Fri Oct 6 20:23:56 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* ppc-instructions (fmul, fmuls): correct instruction format - had
|
|
|
|
FRB instead of FRC.
|
|
|
|
|
|
|
|
Wed Oct 4 17:31:12 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* psim.c, device_tree.h, device_tree.c, devices.c (printd_*,
|
|
|
|
scand_*): new functions to parse/print fields in device names
|
|
|
|
while hiding any machine dependency.
|
|
|
|
|
|
|
|
* devices.c, psim.c: Change the stack init code so that it is
|
|
|
|
handled by a device. Arguments passed across using a device ioctl
|
|
|
|
(hack).
|
|
|
|
|
|
|
|
* devices.h, devices.c: device ioctl callback changed to allow a
|
|
|
|
variable number of arguments. This gives greater flexability and
|
|
|
|
greater chance of bugs.
|
|
|
|
|
|
|
|
Tue Oct 3 22:01:56 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* main.c (printf_filtered, error): Missing va_end() to close off
|
|
|
|
variable argument use.
|
|
|
|
|
|
|
|
* Makefile.in (tmp-gencode): comment out hack to get around some
|
|
|
|
versions of make not handling files being created as side-effects.
|
|
|
|
|
|
|
|
* gen.c (lf_open): Add -n (real_file_name) option. Specifies an
|
|
|
|
alternative file name to use in output files for things like #line
|
|
|
|
macros.
|
|
|
|
|
|
|
|
Makefile.in (tmp-gencode): Use gen -n so that debug info is
|
|
|
|
correct.
|
|
|
|
|
|
|
|
* Makefile.in (TARGETLIB): Use this instead of libsim.a in the
|
|
|
|
Makefile.
|
|
|
|
|
1995-10-08 02:42:39 +00:00
|
|
|
Sat Oct 7 22:40:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* sim_calls.c (sim_set_callbacks): Define new function.
|
|
|
|
|
1995-10-06 21:23:35 +00:00
|
|
|
Fri Oct 6 17:23:10 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* psim.c (psim_print_info): Print exit status or signal number.
|
|
|
|
|
1995-10-02 15:47:57 +00:00
|
|
|
Mon Oct 2 11:46:37 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
1995-10-02 18:20:04 +00:00
|
|
|
* cpu.c (struct _cpu): Add number_of_insns field to trace how many
|
1995-10-02 18:19:17 +00:00
|
|
|
instructions are executed.
|
|
|
|
(cpu_increment_number_of_insns): New function to increment the
|
|
|
|
number of instructions issued.
|
|
|
|
(cpu_get_number_of_insns): New function to return the number of
|
|
|
|
instructions issued.
|
|
|
|
(cpu_print_info): New function to print cpu related information.
|
|
|
|
At present, print the number of instructions executed.
|
|
|
|
|
|
|
|
* gen_idecode_c: Emit call to cpu_increment_number_of_insns within
|
|
|
|
idecode_issue.
|
|
|
|
|
|
|
|
* psim.c (psim_print_info): New function to iterate over each of
|
|
|
|
the CPU's calling cpu_print_info.
|
|
|
|
|
|
|
|
* psim.h,cpu.h: Add new declarations.
|
|
|
|
|
1995-10-02 15:47:57 +00:00
|
|
|
* sim_calls.c (sim_open): Add argument processing to add the same
|
|
|
|
switches main.c accepts for the standalone processor.
|
1995-10-02 18:19:17 +00:00
|
|
|
(sim_close): Call psim_print_info if -I.
|
|
|
|
|
1995-10-02 15:47:57 +00:00
|
|
|
* main.c (main): Add comment saying to update sim_calls.c when
|
1995-10-02 18:19:17 +00:00
|
|
|
adding switches. Add -I to call psim_print_info when done.
|
1995-10-02 18:21:46 +00:00
|
|
|
(usage): Update usage message.
|
1995-10-02 15:47:57 +00:00
|
|
|
|
1995-10-01 17:54:45 +00:00
|
|
|
Sun Oct 1 13:52:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* main.c (printf_filtered): Correct to match new prototype.
|
|
|
|
|
1995-10-01 00:48:15 +00:00
|
|
|
Sat Sep 30 20:47:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* sim_callbacks.h (printf_filtered): Correct prototype.
|
|
|
|
|
1995-09-21 22:23:56 +00:00
|
|
|
Thu Sep 21 16:26:49 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
1995-10-01 00:48:15 +00:00
|
|
|
* device_tree.c (OEA_MEMORY_SIZE): Define if not defined to
|
|
|
|
0x100000.
|
|
|
|
(clayton_memory_size): Define as OEA_MEMORY_SIZE.
|
|
|
|
|
1995-09-21 22:23:56 +00:00
|
|
|
* std-config.h (WITH_TRACE): Default to 1 now.
|
|
|
|
|
|
|
|
* psim.c (write_stack_arguments): Don't write any stack arguments
|
|
|
|
if OEA.
|
|
|
|
|
|
|
|
* main.c (main): Switch to using getopt. Make -p also set
|
1995-10-01 00:48:15 +00:00
|
|
|
trace_semantics. Make -a turn on all trace flags. Make -C turn
|
|
|
|
on console tracing.
|
1995-09-21 22:23:56 +00:00
|
|
|
|
|
|
|
* device_tree.c (create_option_device_node): Assume a program is
|
|
|
|
OEA if the start address is < 4096, not just == 0.
|
|
|
|
|
1995-09-20 17:38:13 +00:00
|
|
|
Wed Sep 20 13:36:06 1995 Ian Lance Taylor <ian@cygnus.com>
|
|
|
|
|
|
|
|
* Makefile.in (maintainer-clean): New synonym for realclean.
|
|
|
|
|
1995-09-10 17:33:54 +00:00
|
|
|
Sun Sep 10 10:23:56 1995 Michael Tiemann <tiemann@axon.cygnus.com>
|
|
|
|
|
|
|
|
* registers.c (register_description): Add gdb synonyms for cr
|
|
|
|
(cnd) and msr (ps).
|
|
|
|
|
|
|
|
Fri Sep 8 13:16:10 1995 Ian Lance Taylor <ian@cygnus.com>
|
|
|
|
|
|
|
|
* Makefile.in (install): Don't install in $(tooldir).
|
|
|
|
|
1995-09-08 23:56:38 +00:00
|
|
|
* configure.in: Call AC_CONFIG_HEADER. Don't try to use
|
|
|
|
bfd/hosts/*.h file or bfd/config/*.mh file. Call AC_PROG_CC and
|
|
|
|
AC_PROG_RANLIB. Substitute in values for CFLAGS, HDEFINES, AR,
|
|
|
|
and CC_FOR_BUILD. Call AC_CHECK_HEADERS for various header files.
|
|
|
|
Touch stamp.h if creating config.h.
|
|
|
|
* configure: Rebuild.
|
|
|
|
* config.in: New file, created by autoheader.
|
|
|
|
* Makefile.in (AR): Define as @AR@.
|
|
|
|
(CC): New variable, defined as @CC@.
|
|
|
|
(CFLAGS): Define as @CFLAGS@.
|
|
|
|
(CC_FOR_BUILD): New variable, defined as @CC_FOR_BUILD@.
|
|
|
|
(RANLIB): Define as @RANLIB@.
|
|
|
|
(HDEFINES, TDEFINES): New variables.
|
|
|
|
(@host_makefile_frag@): Remove.
|
|
|
|
(mostlyclean): Make the same as clean, not distclean.
|
|
|
|
(clean): Remove config.log.
|
|
|
|
(distclean): Remove config.h and stamp-h.
|
|
|
|
(Makefile): Don't depend upon @frags@. Just rebuild Makefile when
|
|
|
|
invoking config.status.
|
|
|
|
(config.h, stamp-h): New targets.
|
|
|
|
(gen, gen.o): Build with CC_FOR_BUILD, not CC.
|
|
|
|
(ppc-config.h): Rename from old config.h build.
|
|
|
|
* (basics.h,gen.c,ppc-endian.c,psim.c): Include ppc-config.h.
|
|
|
|
|
1995-09-08 13:59:49 +00:00
|
|
|
Fri Sep 8 09:51:03 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* configure{,.in}: Don't include sysdep.h from bfd, since bfd no
|
|
|
|
longer provides it.
|
|
|
|
* basics.h (sysdep.h): Don't include it.
|
|
|
|
* Makefile.in (BASICS_H): Remove sysdep.h.
|
|
|
|
|
|
|
|
Wed Sep 6 13:25:42 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* core.c (core_add_data): First growth of bss was being put at
|
|
|
|
wrong address (0) instead of &end.
|
|
|
|
|
|
|
|
* core.c (core_add_stack, core_add_data): Was not handling case
|
|
|
|
where bss/stack is grown across the current end-of-{bss,stack}.
|
|
|
|
|
|
|
|
Wed Sep 6 00:46:10 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* system.c (system_call): Fix SYS_break - was aligning bss to a
|
|
|
|
page boundary instead of just an 8 byte one; On first call sbrk(0)
|
|
|
|
!= sbrk(0).
|
|
|
|
|
|
|
|
Thu Aug 24 14:48:54 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* Makefile.in (install): Fix install rule.
|
|
|
|
|
1995-08-23 21:06:36 +00:00
|
|
|
Tue Aug 22 09:31:18 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
|
|
|
|
|
|
|
* system.c (system_call): Add read support.
|
|
|
|
|
|
|
|
* main.c (main): -t sets trace_device_tree. Correct usage message
|
|
|
|
to current reality.
|
|
|
|
|
|
|
|
* device_tree.c (update_memory_node_for_section): Make tracing
|
|
|
|
output line up. If not code or readonly, assume that the section
|
|
|
|
is a data section and has read/write permissions. Add readonly
|
|
|
|
support.
|
|
|
|
|
|
|
|
* core.c (create_core_from_addresses): Print end address in traces
|
|
|
|
and make tracing output line up.
|
|
|
|
|
|
|
|
* Makefile.in: Rewrite from Makefile to work with the Cygnus
|
|
|
|
environment, and support compiling in a different directory than
|
|
|
|
the sources reside in.
|
|
|
|
|
|
|
|
* ppc-endian.h: Rename from endian.h so that it doesn't get
|
|
|
|
confused with /usr/include/sys/endian.h on Linux. Add Linux
|
|
|
|
endian support.
|
|
|
|
|
|
|
|
* ppc-endian.c: Rename to be consistant with ppc-endian.h.
|
|
|
|
Include ppc-endian.h, not endian.h.
|
|
|
|
|
|
|
|
* basics.h (sysdep.h): Include sysdep.h that configure makes.
|
|
|
|
Include ppc-endian.h, not endian.h.
|
|
|
|
|
|
|
|
* std-config.h: Rename from ppc-config. Put #ifndefs around most
|
|
|
|
configuration macros, so they can be overridden via CFLAGS. By
|
|
|
|
default, turn off tracing.
|
|
|
|
|
|
|
|
* configure.in: Clone from other simulator targets.
|
|
|
|
* configure: Generate via autoconf from configure.in.
|
|
|
|
|
|
|
|
Sat Aug 19 09:05:32 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* ppc-instructions: fix srawi (was geting XER[CA] real wrong).
|
|
|
|
|
|
|
|
* interrupts.c (data_storage_interrupt): allow stack to grow by
|
|
|
|
upto one MB per increment.
|
|
|
|
|
|
|
|
* ppc-instructions: divw was computing rA / rA not rA / rB
|
|
|
|
|
|
|
|
* main.c (main): really stupid. Wasn't exiting with correct status
|
|
|
|
|
|
|
|
Fri Aug 18 00:38:01 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* system.c (system_call): add system calls kill(2) and getpid(2).
|
|
|
|
|
|
|
|
* main.c (main): Check/return exit status when simulation
|
|
|
|
finishes.
|
|
|
|
|
|
|
|
Thu Aug 17 14:29:18 1995 Andrew Cagney <cagney@kremvax>
|
|
|
|
|
|
|
|
* device_tree.c (create_option_device_node): Alignment rules (at
|
|
|
|
least for the moment) now are for strict alignment only for LE OEA
|
|
|
|
mode. (Because of compiler problems).
|
|
|
|
|
|
|
|
* system.c (system_call) SYS_exit: Wasn't exiting with correct status.
|
|
|
|
|
|
|
|
Thu Aug 17 01:16:38 1995 Andrew Cagney - aka Noid <cagney@kremvax>
|
|
|
|
|
|
|
|
* vm.c (DEFINE_VM_DATA_MAP_WRITE_N): For miss aligned transfer
|
|
|
|
forgot to return.
|
|
|
|
|
|
|
|
* system.c (system_call): didn't page align break argument before
|
|
|
|
determining increment break increment.
|
|
|
|
|
|
|
|
* psim/ppc: Re-arange entire directory structure so that
|
|
|
|
everything lives in the one directory. While a pain for cleaning,
|
|
|
|
makes building across multiple architectures much simpler.
|
|
|
|
|
|
|
|
* devices.c, device_tree.c: Added code that provides a simple
|
|
|
|
illustration of how an interrupt control device could be
|
|
|
|
implemented.
|
|
|
|
|
|
|
|
* devices.c: Added code so that the dumb console device can read
|
|
|
|
(from stdin) as well as write to stdout.
|
|
|
|
|